这是前端食堂的第 110 篇原创
- 食堂技术周刊仓库地址:https://github.com/Geekhyt/weekly[1]
视频版已在 B 站【前端食堂】同步发送,喜欢看视频的堂友可以先去 B 站看视频。
本期摘要
- Node.js v18
- Nuxt 3 RC1
- Parcel v2.5.0
- HTTPie 是怎样失去了 54k GitHub 星星
- 计算机程序的构造和解释 — JavaScript 版
- Mitosis 入门快速指南
- 为什么要使用 Redux Toolkit
- JavaScript 测试教程
- Linux 命令行世界的生存指南
大家好,我是童欧巴。欢迎来到本期的前端食堂技术周刊,我们先来看下上周的技术资讯。
技术资讯
- Node.js v18 发布[2]
Node.js 的每个 LTS 的版本代号都是以化学元素命名,按照首字母 A-Z 的顺序,这次的版本代号为 Hydrogen,翻译成中文是 "氢"。不过此版本目前还不是 LTS 版本,请勿在生产环境使用。
关于更全面的特性解读以及未来展望可以看天猪的这篇文章:Node.js 18 新特性解读[3]
- Nuxt 3 RC1 版本发布[4]
距离 Nuxt 3 Beta 版本发布已经过去了 6 个月,现在终于迎来了 Nuxt 3 的第一个 RC 候选版本,代号为Mount Hope。你可以通过官方发布的这篇博客来了解下面这些强大的功能:
- Vue3 和 TypeScript
- 同时支持 Vite 和 Webpack,默认使用 Vite
- Nitro & UnJS
- 文件系统自动化(Pages、Plugins、Components、Composables、Public、Server)
- Modules(Nuxt Kit)
- Parcel v2.5.0[5]
Parcel 发布 v2.5.0,主要包括以下特性:
- 添加 Web Extension manifest v3 支持
- 支持 __dirname、__filename
- 对 process.env 添加 in 表达式的支持
- 升级 SWC 和 Parcel CSS
- HTTPie 是怎样失去了 54k GitHub 星星[6]
HTTPie 作为 GitHub 上最受欢迎的 80 个开源项目之一,拥有超过 54k 的 Star,然而由于作者的一次误操作,将仓库设为私有后,所有的 Star 都消失了,向 GitHub 官方求助后,也并没有得到帮助。
原因是 GitHub 有一个无情的设定,一旦将仓库设为私有,将会永久删除所有的 Watch 和 Star。
说回产品本身,GitHub 确实该好好优化一下用户体验了。当用户想要删除某样东西会引起较大影响时,弹窗应该准确描述其后果的严重性。使用软删除,人难免会犯错。就算是硬删除,也可以延迟执行。
下面我们来看技术资料。
技术资料
- 计算机程序的构造和解释 — JavaScript 版[7]
这本由麻省理工学院出版的著作终于有了 JavaScript 语言版本,可以帮助你建立对计算机程序的心智模型。
- Mitosis 入门快速指南[8]
Mitosis 是一个编译时框架,允许你在 JSX 中编写组件并编译为原生 JavaScript、Angular、React、Vue 等。
“一次编写组件,到处运行”,意味着我们可以用它来创造一个跨多个框架的 UI 组件库,以更高的抽象级别编写组件,实现在不同框架之间的轻松迁移。
不仅如此,还可以将 Figma 或者 Sketch 中的设计稿转换成你想要的框架组件代码,使用 Builder.io 进行拖拽来构建 UI 并编排代码。
- 为什么要使用 Redux Toolkit[9]
Redux 官方发布的这篇博客讲解了 Redux Toolkit 的 Why 和 How,并强烈推荐使用。
一句话总结:Redux Toolkit 是使用 Redux 的最佳实践。
- JavaScript 测试教程[10]
教程包含 10 个部分,包括单元测试、快照测试、集成测试、端到端测试(E2E) 等等。
- Jest 基础知识
- 使用 Enzyme 测试 React 组件
- 组件 Props 测试、mount 函数渲染、快照测试
- Mock 模拟 API 调用、模拟 React 组件交互
- 使用 react-hooks-testing-library 测试 Hooks
- 使用 Cypress 进行端到端测试(E2E)
- 对比 React Testing Library 和 Enzyme
- 使用 Jest 和 React Testing Library 的 Mock 进阶
- Linux 命令行世界的生存指南[11]
这本电子书用讲故事的方式介绍了如何生存在 Linux 命令行的世界,着眼于更宏大的视角,试着向你传授如何与命令行界面友好的相处。包括命令行基本语言、配置文件及环境、常见任务和主要工具以及 Shell 编程。
好文推荐
下面来看一下好文推荐,本周推荐的好文是:
- 给前端工程师的 Terminal 指南[12]
- Jotai 如何指定 Package 的入口点[13]
好了,以上就是本期的食堂周刊,观众老爷们如果觉得还不错,一键三连是对食堂老板最大的支持。
你的前端食堂,吃好每一顿饭。我们下期见。
周刊一锅端
如果大家还没看过瘾,给大家推荐一下食堂技术周刊的合作伙伴,赶快把他们也抱入碗中吧~
- 前端早早聊的 18 个成长宝藏库:前端早早鸟,前端早早跑
- MDH 前端周刊:大厂一线 P8,Umi、Dva 等库作者
- DEX 周刊[14]:关于产品、设计、前端、软件等内容的精华资讯邮件列表
参考资料
[1]
食堂技术周刊仓库地址:https://github.com/Geekhyt/weekly: https://github.com/Geekhyt/weekly
[2]
Node.js v18 发布: https://nodejs.org/en/blog/release/v18.0.0/
[3]
Node.js 18 新特性解读: https://zhuanlan.zhihu.com/p/502951532
[4]
Nuxt 3 RC1 版本发布: https://nuxtjs.org/announcements/nuxt3-rc/
[5]
Parcel v2.5.0: https://github.com/parcel-bundler/parcel/releases/tag/v2.5.0
[6]
HTTPie 是怎样失去了 54k GitHub 星星: https://httpie.io/blog/stardust
[7]
计算机程序的构造和解释 — JavaScript 版: https://github.com/source-academy/sicp
[8]
Mitosis 入门快速指南: https://www.builder.io/blog/mitosis-a-quick-guide
[9]
为什么要使用 Redux Toolkit: https://redux.js.org/introduction/why-rtk-is-redux-today
[10]
JavaScript 测试教程: https://wanago.io/2022/04/18/advanced-mocking-jest-react-testing-library/
[11]
Linux 命令行世界的生存指南: https://billie66.github.io/TLCL/book/index.html
[12]
给前端工程师的 Terminal 指南: https://www.joshwcomeau.com/javascript/terminal-for-js-devs/
[13]
Jotai 如何指定 Package 的入口点: https://blog.axlight.com/posts/how-jotai-specifies-package-entry-points/
[14]
DEX 周刊: https://newsletter.dex.group/