vue响应式原理
vue.js采用数据劫持结合发布-订阅者模式,通过Object.defineProperty()来劫持data中各个属性的setter、getter(对应Object.defineProperty()中的get()与set()),在数据变动时,发布消息给订阅者,触发响应的监听回调。
Object.defineProperty(obj, objkey, {
get() {
console.log('我读取到value值了');
return value;
},
set(newVal) {
console.log('我更改value值了');
value = newVal
}
})