让前端飞程序员Vue

VUE的双向绑定原理

2019-03-25  本文已影响9人  眼GG

数据劫持(vue.js)

        1.vue.js 则是采用数据劫持结合发布者-订阅者模式的方式,通过对象的定义属性( Object.defineProperty() )来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。    


Object.defineProperty():方法会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性, 并返回这个对象。

下面有一个例子可以看一下

demo:

这里没有调用obj.name  所以set方法没有被执行

这里调用了 set方法执行了

在这里提醒小伙伴们 双向绑定在面试中会经常问到的

上一篇 下一篇

猜你喜欢

热点阅读