Open H246802 opened 5 years ago
function Vue(options) {
this.data = options.data || {}
Object.keys(this.data).forEach((key)=>{
Object.defineProperty(this,key,{
get(){
return this.data[key]
},
set(value){
console.log(`此时改变了${key}的值`)
this.data[key] = value
}
})
})
}
let app = new Vue({
data: {
message: 'hi'
}
})
console.log(app.message) // 'hi'
关于mvvm实现可以查看详细实现方法剖析vue实现原理,自己动手实现mvvm
简单模拟
Vue
的数据代理功能