Vue 官方团队于 2020 年 9 月 18 日晚 11 点半左右发布了
Vue3.0
版本 ?。代号为One Piece
。
其实Vue3.0
版本发布的消息,我是昨天晚上刷朋友圈看到的(已经差不多凌晨 1 点了),然后我就立刻起来,打开电脑,看了一下github
,把官方发布文档过了一遍。其实我感觉这次版本更新,最主要的还是Composition API
以及对于TypeScript
的支持,而且早在 4 月 21 日,尤大在 B 站关于Vue.js 3.0 Beta
最新进展的分享上就已经提到了这些改动。
此次版本更新提供了改进的性能,更小的捆绑包大小,更好的TypeScript
集成,以及用于处理大规模用例的新API
,为框架的长期未来迭代奠定了坚实的基础。
这里我就参考官方releases
给大家大概说一下主要更新(更详细的直接查看releases docs[1]):
进一步推进“渐进框架”概念
Vue
一开始就秉承这样的原则:成为任何人都能快速学习且平易近人的框架。(时至今日,作为Vue
的资深用户,我觉得他做到这一点了)。当然Vue3.0
将这种灵活性进一步提升。
分层内部模块
Vue 3.0
内核仍然可以通过一个简单的<script>
标签使用,但其内部结构已被彻底重写为一组解耦的模块。新的体系结构提供了更好的可维护性,并允许最终用户通过tree-shaking
来减少运行时体积大小的一半。
解决规模问题的新 API
Vue 3.0
引入了Composition API
一套全新的API
,旨在解决大型应用程序中Vue
使用的难点。Composition API
建立在响应式API
之上,与2.x
基于对象的API
方式相比,可实现类似于React Hook
的逻辑组成和复用,拥有更灵活的代码组织模式以及更可靠的类型推断能力。
性能改进
与Vue 2
相比,Vue 3
在bundle
包大小方面通过tree-shaking
减轻了多达41%
的体积),初始渲染速度加快了55%
,更新速度提升了133%
,内存使用率方面表现出了显著的性能改进最多可减少54%
。
改进与TypeScript
的兼容
Vue 3.0
的代码库是用TypeScript
编写的,具有自动生成、测试并构建类型声明。同时,Vue 3
已全面支持TSX
。
未来计划
紧接着,Vue
官方团队计划要做的事情如下:
- 迁移版本
IE11
支持- 新
devtools
中的Router
和Vuex
集成 Vetur
中模板类型推断的进一步改进
快速上手
如果你已经迫不及待的想去学习Vue3
了呢,这里放上对应的链接:
- Vue3 文档[2]
- Vue 2.x 用户迁移指南[3]
参考
Vue 官方发布文档[4]
参考资料
[1]
releases docs: https://github.com/vuejs/vue-next/releases/tag/v3.0.0
[2]
Vue3 文档: https://v3.vuejs.org/
[3]
Vue 2.x 用户迁移指南: https://v3.vuejs.org/guide/migration/introduction.html
[4]
Vue 官方发布文档: https://github.com/vuejs/vue-next/releases/tag/v3.0.0