在Vue中,watch属性用于监听一个数据的变化,并且在数据变化时执行一些操作。它可以观察一个具体的数据对象,从而在该数据对象发生变化时触发对应的回调函数。
使用watch属性的步骤如下:
-
在Vue实例中添加一个watch对象
new Vue({
data: {
message: 'Hello Vue!'
},
watch: {
message: function (newVal, oldVal) {
console.log('message changed from ' + oldVal + ' to ' + newVal)
}
}
}) -
在watch对象中添加一个或者多个属性监听函数
watch: {
message: function (newVal, oldVal) {
console.log('message changed from ' + oldVal + ' to ' + newVal)
},
// 添加多个监听函数
age: [
function (newVal, oldVal) {
console.log('age changed from ' + oldVal + ' to ' + newVal)
},
function (newVal, oldVal) {
console.log('age changed again from ' + oldVal + ' to ' + newVal)
}
]
}
在这个例子中,我们监听了message和age两个属性,在这些属性的值发生变化时,我们会执行对应的监听函数,输出当前属性的新旧值。
需要注意的是,watch属性的监听函数中第一个参数是新的属性值,第二个参数是旧的属性值。