1.通过数据劫持,来实现MVVM;
第一步:了解Object.defineProperty();
可接受三个参数:
1.所要监听的对象,例如:let obj = {};
2.对象中的哪个key 发生变化,key
3.第三个参数是一个对象有:
{
onfigurable:true, false 不可以删除 true 可以删除
enumerable:true,false 不可以通过点语法添加,true 可以通过点语法添加
writable: true, false不可以读写,true可读写
value:key值
get (){
当有get时:
不得有: writable value属性
}
set(){
}
}
列子:
let obj = {}
Object.defineProperty(obj,'key',{
configurable: true,
enumerable: true,
get(){
return obj.key
},
set(value){
console.log(value);
}
})