栗子前端技术周刊第 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 等,周刊内容也会不断优化改进,希望你们能够喜欢。

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

相关推荐
excel35 分钟前
Node.js 断言与测试框架示例对比
前端
天蓝色的鱼鱼2 小时前
前端开发者的组件设计之痛:为什么我的组件总是难以维护?
前端·react.js
codingandsleeping2 小时前
使用orval自动拉取swagger文档并生成ts接口
前端·javascript
石金龙3 小时前
[译] Composition in CSS
前端·css
白水清风3 小时前
微前端学习记录(qiankun、wujie、micro-app)
前端·javascript·前端工程化
Ticnix3 小时前
函数封装实现Echarts多表渲染/叠加渲染
前端·echarts
用户22152044278003 小时前
new、原型和原型链浅析
前端·javascript
阿星做前端3 小时前
coze源码解读: space develop 页面
前端·javascript
叫我小窝吧3 小时前
Promise 的使用
前端·javascript
NBtab4 小时前
Vite + Vue3项目版本更新检查与页面自动刷新方案
前端