1. vue2和vue3双向数据绑定原理发生了改变(重点)
vue2 的双向数据绑定是利用ES5 的一个 API Object.definePropert()对数据进行劫持 结合 发布订阅模式的方式来实现的。
vue3 中使用了 es6 的 ProxyAPI 对数据代理。
相比于vue2.x,使用proxy的优势如下
1、defineProperty只能监听某个属性,不能对全对象监听
2、可以省去for in、闭包等内容来提升效率(直接绑定整个对象即可)
3、可以监听数组,不用再去单独的对数组做特异性操作 vue3.x可以检测到数组内部数据的变化