Vue 3.0 的新特性
更快更省
完全 TypeScript 重构
Composition API
其它改进
1.1 更快更省
Object.defineProperty > Proxy
不需要遍历并修改原始对象
可以完全覆盖对象/数组操作
可以覆盖更多的数据类型
观察更加精准,消耗更少
原生 API,速度超快
内存减半,速度加倍
重构 Virtual DOM
生成的代码更容易被 JS 引擎理解、优化
动静结合,精确编译和重新渲染动态的部分
优化 <slot> 生成(默认编译为函数)
支持 tree-shaking,有效减小打包体积
速度加快6倍
可以告别 Time slicing
支持更大规模的应用
编译后的代码尽可能
1.2 完全 TypeScript 重构
让 Vue 开发团队更轻松
架构更松散灵活,阅读源码更轻松
可以独立使用 Vue 内部模块
IDE 支持更好
1.3 Composition API
概要:将 2.x 中与组件逻辑相关的选项以 API 函数的形式重新设计。
曾用名:Vue Function-based API
取代了早先的 Class API
Vue 2 对象式组件的问题
难以复用逻辑代码
难以拆分超大型组件
代码无法被优化/压缩
难以进行数据类型推导
Composition API 如何解决这些问题
纯函数,方便 JS 运行时理解
轻松完成 tree-shaking
单一组件的代码可以统合在一起
不同组件间,可以对象解构及重命名避免命名空间冲突
升级策略
提供兼容版本和标准版本
兼容版本中,setup() 优先使用
一些属性可以继续保留,比如 template
数据、方法、生命周期都将被废弃
开发者可以渐进式的将代码升级到新版
提前使用 Composition API
网友评论