赞
踩
尤雨溪大佬前一阵在某乎上发布了想法说Vue 3 现已成为新的默认版本!对于还在用vue2的我来说属实有点手忙脚乱,既然已经成为默认版本了,那就说明我们前端又要开始学习新的知识了(毕业了也要继续学习)
首先先来介绍一下vue3相对vue2有哪些方面的提升:
Compostion api 代替了 Option api ,Compostion API 中时根据逻辑相关组织代码的,提高可读性和可维护性
性能比Vue2.x快1.2~2倍;按需编译,体积比vue2.x更小
响应式 Proxy 代替 Object.defineProperty
对 typescript 支持更好,更先进的组件
接下来介绍一下vue3具体都有哪些新特性?
.Composition API:组合API,类似React Hooks
.Performance:性能比vue2.x块1.2~2倍
.Tree shaking support:支持按需编译,体积更小
.Custom Renderer API:暴露了自定义渲染API
.Fragment,Teleport(Protal),Suspense:新增三个组件
.Better TypeScript support:更好的支持TS
Composition API
Performance
.运用了diff方法优化
.静态提升,对于不参与更新的元素,只会被创建一次,在渲染时直接复用
.cacheHandlers 事件侦听器缓存,默认情况下onClick会被视为动态绑定,所以每次都会区追踪它的变化,但是因为是同一个函数,所以没有追踪变化,直接缓存起来复用。当静态内容大到一定量级的时候,会用_createStaticVNode方法在客户端去生成一个static node。这些静态node,会被直接innerHtml,就不需要创建对象,然后根据对象渲染。
.ssr 渲染,当静态内容大到一定量级的时候,会用_createStaticVNode方法在客户端去生成一个static node。这些静态node,会被直接innerHtml,就不需要创建对象,然后根据对象渲染。
Tree shaking support
Vue3.x中的核心API都支持tree-shaking,这些API都是通过包引入的方式而不是直接在实例化时就注入,只会对使用到的功能或特性进行打包(按需打包),这意味着更多的功能和更小的体积。
Custom Renderer API
开放了 自定义 render 函数的 API,即Custom Renderer API。
Fragment,Teleport(Protal),Suspense
Better TypeScript support
Vue3.x采用TypeScript重写
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。