我是 watch
的新手,我想弄清楚为什么我的 watch 在作为对象访问时没有触发。我看到了this线程,但我不清楚我的问题是否相同。以下是我的简化示例(完整示例使用数组获得了更多属性和属性
<div id="app">
<input type="text" v-model.lazy="userInfo.name"> {{userInfo.name}}
</div>
JS
new Vue({
el: "#app",
data: {
userInfo: {
name: ''
}
},
methods: {
},
watch: {
userInfo : {
name(oldVal, newVal){
console.log(oldVal +" " + newVal)
},
},
deep: true
}
})
链接到 JSFiddle
最佳答案
将观察者改成这样:
new Vue({
el: "#app",
data: {
userInfo: {
name: "null"
}
},
methods: {},
watch: {
"userInfo.name": function(oldVal, newVal) {
console.log(oldVal + " " + newVal);
}
}
});
请参阅相同的文档 here . 检查最后一个例子。
关于javascript - 如何在对象中使用 Vue watch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54925069/