栗子前端技术周刊第 38 期 - VueConf 2024、pnpm 9.5、Vitest 2.0...

🌰栗子前端技术周刊第 38 期 (2024.7.8 - 2024.7.14):浏览前端一周最新消息,学习国内外优秀文章视频,让我们保持对前端的好奇心。

📰 技术资讯

  1. VueConf 2024:VueConf 2024 于上周六在深圳召开,大会介绍了 Vue Router 的新数据加载器 API、Vue DevTools 的下一个迭代、Vue Vapor 等等内容,可通过官方 PPT 了解更多演讲详情。
  1. pnpm 9.5:pnpm 9.5 引入了"Catalogs"功能,实现了可共享的依赖关系版本说明,减少了合并冲突,改进了对 monorepos 的支持。使用时首先在 pnpm-workspace.yaml 定义 catalog,然后再 package.json 中使用,最终 package.json 会使用 workspace.yaml 中 catalog 定义的版本。
yaml 复制代码
# pnpm-workspace.yaml
catalogs:
  # Can be referenced through "catalog:react17"
  react17:
    react: ^17.0.2
    react-dom: ^17.0.2

  # Can be referenced through "catalog:react18"
  react18:
    react: ^18.2.0
    react-dom: ^18.2.0
json 复制代码
{
  "name": "@example/components",
  "dependencies": {
    "react": "catalog:react18",
  }
}
  1. Vitest 2.0:Vitest 2.0 发布,提供了更好的浏览器模式支持、新的 Blob Reporter 和一些稳定性改进。

📒 技术文章

  1. React, Visualized:React 入门指南,使用可视化方式介绍。
  1. Protecting Against Third Party Code Changes with Script Integrity :利用脚本完整性验证来防止第三方修改代码 - 最近有很多关于 polyfill.io 的新闻,如果你从他们的域名加载了脚本,你可能会收到一些恶意代码。为了防止这个情况发生,你可以通过 integrity 属性来做完整性验证。

  2. 删除node_modules依赖文件很慢?其实三秒就能删除了:估计只要是从事前端开发的朋友们肯定都会遇到过删除 node_modules 依赖文件的情况,文中介绍删除依赖为什么会慢和如何秒删除依赖。

🔧 开发工具

  1. es-toolkit:es-toolkit 是一个新的 JavaScript 工具库,自称是更快、更现代化的 lodash 版本,而 lodash 则是更快、更现代化的 underscore 版本。
js 复制代码
import { countBy } from 'es-toolkit/array';

const array = [1, 2, 3, 4, 5, 6];
const result = countBy(array, x => x % 2 === 0 ? 'even' : 'odd');

console.log(result);
// 输出: { 'odd': 3, 'even': 3 }
  1. Croner 8.1:定时任务,在后端中常见,Croner 支持全平台定时任务,包括 Node、Deno、Bun 和浏览器。
js 复制代码
const job = Cron('*/5 * * * * *', () => {
	console.log('每五秒运行一次');
});
  1. file-type 19.1:从 Buffer、Uint8Array 或 ArrayBuffer 中检测文件类型,现在还能从 streams 流中读取。
js 复制代码
import { fileTypeFromFile } from 'file-type';

console.log(await fileTypeFromFile('Unicorn.png'));
//=> {ext: 'png', mime: 'image/png'}

🚀🚀🚀 以上资讯文章选自常见周刊,如 JavaScript Weekly 等,周刊内容也会不断优化改进,希望你们能够喜欢。

💖 欢迎关注微信公众号:栗子前端

相关推荐
Sayai7 小时前
不重新打包,vim 直接改 jar 包内的前端文件:原理、步骤与避坑
前端·vim·jar
IT_陈寒7 小时前
SpringBoot自动配置失效时我差点把电脑扔了
前端·人工智能·后端
李少兄7 小时前
JavaScript 对象完全指南
开发语言·javascript·ecmascript
何何____7 小时前
web方向js考核题解
开发语言·前端·javascript
风骏时光牛马7 小时前
AI面试复盘:沉淀经验,找准求职短板
前端
liangshanbo12157 小时前
面试题终极整理:手写 Promise.all / Promise.allSettled
前端·javascript·promise
心易行者7 小时前
用HTML在线运行搭后台管理系统:5个核心模块+0服务器,3天跑通完整业务
大数据·前端·网络·人工智能·python
单线程121387 小时前
从案例分析 Vue3 Tokenizer+Parser 源码五
前端·javascript·vue.js
神奇的程序员7 小时前
Apple Watch S12,送一台
前端
moonsims8 小时前
Voliro 无人机-Aerial Mobile Robot(空中移动机器人):把无人机从“飞过去拍摄”,升级成“飞过去并与目标物理接触、测量甚至操作”
前端·人工智能·安全·无人机·量子计算