vue2和vue3比较
vue2和vue3比较
一.vue3新特性:
1.数据响应重新实现(ES6的proxy代替Es5的Object.defineProperty)
2.源码使用ts重写,更好的类型推导
3.虚拟DOM新算法(更快,更小)
4.提供了composition api,为更好的逻辑复用与代码组织
5.自定义渲染器(app、小程序、游戏开发)
6.Fragment,模板可以有多个根元素
二.vue2 vue3响应原理对比
1.vue2使用Object.defineProperty方法实现响应式数据
2.缺点:
无法检测到对象属性的动态添加和删除
无法检测到数组的下标和length属性的变更
3.解决方案:
vue2提供Vue.$set动态给对象添加属性
Vue.$delete动态删除对象属性
重写数组的方法,检测数组变更
------------------------------------------------------------------------------------
1.vue3使用proxy实现响应式数据
2.优点:
可以检测到代理对象属性的动态新增和删除
可以见到测数组的下标和length属性的变化
3.缺点:
es6的proxy不支持低版本浏览器 IE11
回针对IE11出一个特殊版本进行支持
一.vue3新特性:
1.数据响应重新实现(ES6的proxy代替Es5的Object.defineProperty)
2.源码使用ts重写,更好的类型推导
3.虚拟DOM新算法(更快,更小)
4.提供了composition api,为更好的逻辑复用与代码组织
5.自定义渲染器(app、小程序、游戏开发)
6.Fragment,模板可以有多个根元素
二.vue2 vue3响应原理对比
1.vue2使用Object.defineProperty方法实现响应式数据
2.缺点:
无法检测到对象属性的动态添加和删除
无法检测到数组的下标和length属性的变更
3.解决方案:
vue2提供Vue.$set动态给对象添加属性
Vue.$delete动态删除对象属性
重写数组的方法,检测数组变更
------------------------------------------------------------------------------------
1.vue3使用proxy实现响应式数据
2.优点:
可以检测到代理对象属性的动态新增和删除
可以见到测数组的下标和length属性的变化
3.缺点:
es6的proxy不支持低版本浏览器 IE11
回针对IE11出一个特殊版本进行支持
以上是 vue2和vue3比较 的全部内容, 来源链接: utcz.com/z/378991.html