美味值:🌟🌟🌟🌟🌟
口味:胡萝卜果蔬汁
本期摘要
- TypeScript 5.0 RC
- 2 月登陆 Web 平台的新功能
- Babel v7.21.0
- JavaScript 中 Signals 的演变
- Node.js Toolbox
- 前端构建工具进化历程
- 通过 React Router V6 源码,掌握前端路由
大家好,我是童欧巴。欢迎来到前端食堂技术周刊,我们先来看下上周的技术资讯。
技术资讯
1. TypeScript 5.0 RC
自 TypeScript 5.0 Beta 后的变更:
- 允许装饰器放在
export
和export default
之前或之后。(别问为什么,问就是 TC39 内部讨论和共识的结果) - 新的捆绑器模块解析选项现在只能在
—-module
为esnext
时使用 - 微调了速度基准和包尺寸的具体数值
2. 2 月登陆 Web 平台的新功能
主要更新如下:
- Firefox 110、Chrome 110 发布稳定版本
- Container queries 在三大引擎中稳定
- Chrome 110 支持 CSS initial-letter
- IFrame credentialless
3. Babel v7.21.0
主要更新如下:
- 支持 Inline RegExp modifiers、最新的 Decorators 提案
- TS 5.0
下面我们来看技术资料。
技术资料
1. JavaScript 中 Signals 的演变
如同太阳底下无新鲜事,Signals 的概念也不是新事物,最早可以追溯到 1969 年。回首 JavaScript 框架的初期,有三大典型框架几乎同一时期推出,分别选择了不同的技术路线:
- Angular 的脏检查
- Backbone 的模型驱动重渲染
- Knockout 的细粒度更新
Knockout 的细粒度更新正是建立在 Signals 的基础上,而 Signals 这一术语的来源是 2013 年诞生的 S.js 库。S.js 还引入了反应式所有权的概念,使 Signals 更易于管理,并建立了 Provider/Consumer 的上下文机制。
Vue 也为后续的发展做出了巨大的贡献,将 push/pull 机制向前推进了一步,添加了调度(Scheduling)能力。在 2019 年,Svelte 3 用编译器实现了反应性(reactivity),并抹平了人体工程学方面的缺陷。
反应性带来的可追溯性的潜力是很大的,因为 Signals 的依赖关系图是明确的,在编译时拿到这些信息,进而控制 JavaScript 的最终生成,提升代码加载方面的自由性,这正是 Qwik 和 Marko 的可恢复性(resumability)的基础。
2. Node.js Toolbox
在 Node.js 生态系统中寻找积极维护和流行的库。
3. 前端构建工具进化历程
内容涵盖前端构建工具的进化历程、前端构建工具技术方案对比、常用构建工具核心实现原理。
4. 通过 React Router V6 源码,掌握前端路由
内容涵盖客户端里的路由模式、React Router v6 的架构设计、核心实现 & 组件、常用 Hooks 等。
好了,以上就是本期的食堂周刊,观众老爷们如果觉得还不错,一键三连是对食堂老板最大的支持。
你的前端食堂,吃好每一顿饭,我们下期见。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。