Vue中Watch的注意事项:
1、当被监视的属性变化时,回调函数自动调用,进行相关的操作。
2、监视的属性必须存在,才能被监视。
3、监视属性的两种写法:
(1)、new Vue时传入watch配置
(2)、通过vm.$watch监视
深度监视:
例:
data:{
numbers:{a:1,b:2}
},
watch:{
'numbers.a':{ // 监视多级结构中某个属性的变化(一定要写成字符串!)
handler(){
console.log('a被改变了')
}
},
numbers:{ // 监视多级结构中所有属性的变化
deep:true, // 深度监视,默认为false
handler(){
console.log('numbers被改变了')
}
}
}
1、Vue中的watch默认不监测对象内部值的改变(一层)
2、配置deep:true可以监测对象内部值的改变(多层)
关于Watch的备注:
1、Vue自身可以监测对象内部值的改变,但Vue提供的Watch默认不可以。
2、使用watch时根据数据的具体结构,决定是否采用深度监视。