2021-06-14

关于Vue 3.0的一些解析

前言:

  • 正式版:Vue团队于2020.09.18日发布3.0正式版
  • 前置条件:Vue虽然保留了大量的2.0版本api,但由于是使用TypeScript重构,所以想要学习3.0起码要掌握TS的基础使用

Vue3.0中的六大亮点

序号 特性 解析
1 Performance 性能上比Vue2.0快1.3~2倍
2 Tree shaking support 按需编译,体积更加轻量化
3 Composition API 组合API,可参考React hooks理解
4 Better TypeScript support 对 Ts 提供了更好的支持
5 Custom Renderer API 暴露了自定义渲染API
6 Fragment,Teleport(Protal),Suspense 更先进的组件

注:具体可以参考githubVue3.0的相关源文件https://github.com/vuejs/vue-next/tree/master/packages


Vue3.0是基于什么优化,如何做到更轻量,更快的?

  • 一 、diff 算法优化
    • Vue 2中的虚拟Dom是全量比较
    • Vue 3新增静态标记(PatchFlag)
    • 在与数据变化后,与上次虚拟DOM节点比较时,只比较带有PatchFlag标记的节点
    • 并且可以从flag信息中得知具体需要比较的内容。

静态标记就是非全量比较,只会比较那些被标记的变量,比较的数量大大减少因此提升性能

这让我想到了JS垃圾回收机制里的标记清除,ORZ 感觉熟悉,但回收机是全标记只是清除具有离开环境的标记变量而已)

内存垃圾回收机制在我去年的博文中

上一篇:为什么Spring仍然会是云原生时代最佳平台之一?


下一篇:Techroad_oneStep_210604