知方号

知方号

vue3和2.0的语法区别

vue3和2.0的语法区别?

1、vue2使用Object.defineProperty方法实现响应式数据,vue3使用proxy实现响应式数据

Object.defineProperty的缺点:

  无法检测到对象属性的动态添加和删除

  无法检测到数组的下标和length属性的变更

解决方法:

  vue2提供Vue.$set动态给对象添加属性

  Vue.$delete动态删除对象属性

  重写数组的方法,检测数组变更

proxy的缺点:

  es6的proxy不支持低版本浏览器(IE11)

  会针对IE11出一个特殊版本进行支持

proxy的有点:

  可以坚持到代理对象属性的动态新增和删除

  可以监测到数组的下标和length属性的变化

2、vue3新特性:

  ①:数据响应重新实现(ES6的proxy代替ES5的Object.defineProperty)

  ②:源码使用ts重写,更好的类型推导

  ③:虚拟DOM新算法(更快、更小)

  ④:提供了composition api,为更好的逻辑复用与代码组织

  ⑤:自定义渲染器(app、小程序、游戏开发)

  ⑥:Fragment,模板可以有多个根元素

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至lizi9903@foxmail.com举报,一经查实,本站将立刻删除。

上一篇 什么叫逆回购

下一篇vue3成熟吗