Valuable insights
1.Vue 持续增长与稳定发展: Vue 3在发布后持续获得显著增长,拥有数百万用户和数百万周下载量。开发团队致力于维护其稳定性,确保现有代码在未来仍能兼容运行。
2.Vite 成为主流构建工具: Vite 已经超越 Webpack 成为领先的 JavaScript 构建工具,每周下载量超过2300万。其快速的开发体验和对多框架的支持使其广受欢迎。
3.Vue 3.6 引入性能优化与 Vapor Mode: Vue 3.6通过重构响应式系统提升了性能,并引入了实验性的 Vapor Mode。Vapor Mode旨在实现极致性能和更小的包体积,使得Vue在JS框架基准测试中表现出色。
4.JavaScript 工具链的整合愿景: Evan You 创立 Void Zero 公司,旨在通过 Oxc、Rolldown 和 V+ 等项目,统一零散的 JavaScript 工具链。目标是打造一个高性能、统一设计的工具生态系统。
5.“信号”范式在JS框架中普及: JavaScript 生态系统中的许多框架(除 React 外)正趋向于采用“信号”这一响应式范式。Vue 的响应式系统在内部重构后,速度更快,并与此趋势保持一致。
6.Laravel 社区对 Vue 早期增长贡献巨大: Vue 的早期普及,特别是1.0版本之前,得益于 Laravel 社区的发现和推广。Taylor Otwell 和 Jeffrey Way 等人的推荐,为 Vue 带来了重要的初始用户群。
7.从开发者到产品管理者的转变: 作为 Vue 和 Void Zero 的创始人兼CEO,Evan You 的工作重心已从纯粹的编码转向产品管理和战略规划,以推动更宏观的工具链发展。
Vue的起源与成长
Vue.js 的诞生与早期发展离不开其创始人尤雨溪的远见与辛勤工作。在 Laravel 社区中,Taylor Otwell 和 Jeffrey Way 等人很早就注意到了 Vue.js 的潜力,并积极推广,这对于 Vue 早期的普及起到了至关重要的作用。尤雨溪对此表示深深的感谢,并承认 Laravel 社区在 Vue 发展初期扮演了“发现者”的角色,将其引入更广阔的开发者视野。自2016年起,尤雨溪成为一名独立的开源开发者,并于2023年创立了 Void Zero 公司,旨在应对 JavaScript 生态系统的复杂性并提供更优秀的工具。
Vue 与 Laravel 的早期联系
Taylor Otwell 在 Vue 达到1.0版本之前就对它表现出兴趣,这证明了他对优秀技术的独到眼光。早在 2015年,Vue 刚于 2014年 创建后不久,Taylor 的推文就引起了关注。当时,Vue 每周只有大约 1,800次 下载,许多 Laravel 用户通过脚本或CDN直接使用它。
- Vue 1.0:于 2015年10月 发布。
- 尤雨溪全职投入 Vue 开发并首次在 Laracon 演讲:2016年7月。
- Vue 2:紧随其后发布。
- Vue 3:在 2019年 Laracon 演讲后发布,并于 2020年 正式推出。
- Vue 3 成为默认版本:2022年1月,经过漫长的过渡期。
- Vue 2 正式停止维护:2023年底。
Vue 3的现状与未来
Vue 3 已经成为 Vue 生态系统的主导力量,npm 上超过 70% 的下载量来自 Vue 3 项目,并且过去一年的增长率超过 67%。这一显著增长对于一个已存在十多年的框架来说尤其令人印象深刻。Vue 团队目前没有发布 Vue 4 的计划,因为 Vue 2 到 Vue 3 的升级对许多用户来说是一次重大变革,因此团队现在将重心放在 Vue 3 的稳定性上,承诺让开发者相信他们当前的代码在五年甚至十年后仍能正常运行。
Vue 3.6 的内部优化
Vue 3.6 的主要改进集中在内部优化上,包括响应式系统的重构。Vue 的响应式系统作为独立的 npm 包 (@vue/reactivity) 存在,其 API 契约保持稳定,这使得团队能够在不破坏外部兼容性的前提下,多次重构其内部实现。此次3.6版本的重构,将使系统比以往更快。
- “信号”(Signals)作为一种新的响应式数据源概念,在 JavaScript 生态系统中变得越来越流行。
- 除了 React 之外,几乎所有主流框架,如 Angular、Preact、Svelte 5 和 Solid,都已支持或引入了信号。
- SolidJS 是最早普及信号概念的框架之一。
- TC39 甚至提出了将信号作为 JavaScript 语言内置概念的提案。
“我们现在看到,在 JavaScript 生态系统中,除了 React 之外,几乎每个框架都在趋向于相同的范式。”
Vapor Mode: 极致性能
Vapor Mode 是 Vue 3.6 中引入的一项实验性功能,它改变了 Vue 单文件组件的编译方式,以实现极致的性能优化。在 JS 框架基准测试中,Vapor Mode 使得 Vue 的渲染性能得以与 Solid 和 Svelte 等轻量级、高性能的框架并驾齐驱,甚至在某些方面超越它们。默认情况下,Vapor Mode 能将包体积减小到约 7KB。
Vapor Mode 支持与现有代码完全相同的 API(但仅限于子集),目前仅支持单文件组件和 Composition API。它高度以编译器为中心,能够更好地分析 JavaScript 和模板之间的关系,生成更高效的输出。用户可以对特定页面或组件启用 Vapor Mode,甚至可以在虚拟 DOM 应用中嵌入 Vapor Mode 组件,反之亦然,提供了高度的灵活性。激活 Vapor Mode 只需在 `