VUE的双向绑定原理
数据劫持(vue.js)
1.vue.js 则是采用数据劫持结合发布者-订阅者模式的方式,通过对象的定义属性( Object.defineProperty() )来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。
Object.defineProperty():方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性, 并返回这个对象。
下面有一个例子可以看一下
demo:
这里没有调用obj.name 所以set方法没有被执行
这里调用了 set方法执行了
在这里提醒小伙伴们 双向绑定在面试中会经常问到的
上一篇
下一篇