vue2中用watch如何监听一个对象
时间: 2024-11-05 07:29:29 浏览: 16
Vue中用props给data赋初始值遇到的问题解决
5星 · 资源好评率100%
在Vue 2中,如果你想通过`watch`来监听一个对象的变化,你可以直接将该对象作为`watch`的第一个参数。Vue会自动检测这个对象内部的属性变化,并触发回调函数。
下面是一个简单的例子:
```javascript
data() {
return {
user: {
name: 'John',
age: 30,
}
}
}
watch: {
// 监听'user'对象的所有属性变化
user: function(newVal, oldVal) {
console.log('User object has changed:', newVal, 'from', oldVal);
},
},
```
在这个例子中,如果`user.name`或`user.age`有任何改变,`watch.user`的回调都会被执行。如果你只想监听特定的属性,可以传入对象路径作为第二个参数,如:
```javascript
watch: {
'user.name': function(newName, oldValue) {
console.log('Only watching "name":', newName, 'from', oldValue);
},
},
```
阅读全文