Vue3 对比 Vue2 的变化

Vue3 对比 Vue2 的变化

1.源码组织方式变化:使用 TS 重写

2.支持 compositionAPI,基于函数的 api,更灵活组织组件逻辑(Vue2 使用 options api)

3.响应式系统提升:Vue3 的响应式数据原理改成了 Proxy,可以监听动态新增删除属性,以及数组变化

4.编译优化:Vue 通过标记静态根节点来优化 Diff,Vue 则标记和提升所有静态根节点,Diff 的时候只需要去对比动态节点的内容

5.打包体积优化:移除了一些不常用的 api(inline-template,filter)

6.生命周期的变化,使用 setup 替代了 beforeCreate 和 created

7.template 支持多个根标签

8.Vuex 状态管理,创建实例的方式,Vue2 使用 new store;Vue3 使用 createStore;

9.Route 获取页面实例以及路由信息,Vue2 使用 this 的方式获取;而 Vue3 采用 getCurrentInstance/userRoute,userRouter 的方式来获取

10.对 props 的使用:Vue2 通过 this 的方式使用;Vue3 则直接通过 props 使用;

11.父子组件传值:Vue3 中当子组件向父组件返回数据时,如果使用的是自定义名称,像 backData,则需要在 emits 定义一下

相关推荐
Swift社区1 小时前
在 Swift 中实现字符串分割问题:以字典中的单词构造句子
开发语言·ios·swift
new出一个对象1 小时前
uniapp接入BMapGL百度地图
javascript·百度·uni-app
没头脑的ht1 小时前
Swift内存访问冲突
开发语言·ios·swift
没头脑的ht1 小时前
Swift闭包的本质
开发语言·ios·swift
wjs20241 小时前
Swift 数组
开发语言
你挚爱的强哥2 小时前
✅✅✅【Vue.js】sd.js基于jQuery Ajax最新原生完整版for凯哥API版本
javascript·vue.js·jquery
stm 学习ing2 小时前
FPGA 第十讲 避免latch的产生
c语言·开发语言·单片机·嵌入式硬件·fpga开发·fpga
y先森3 小时前
CSS3中的伸缩盒模型(弹性盒子、弹性布局)之伸缩容器、伸缩项目、主轴方向、主轴换行方式、复合属性flex-flow
前端·css·css3
前端Hardy3 小时前
纯HTML&CSS实现3D旋转地球
前端·javascript·css·3d·html
susu10830189113 小时前
vue3中父div设置display flex,2个子div重叠
前端·javascript·vue.js