- deep :当需要监听一个对象的改变时,普通的watch方法无法监听到对象内部属性的改变,此时就需要deep属性对对象进行深度监听。
- immediate:最初绑定值的时候也执行函数
- handle:watch中需要具体执行的方法。默认省略而已
写一个简单的watch监听,watch 监听 list 数据的变化
watch: {
list: {
handler(newVal,oldVal) {
//list即为你想监听的数据的名称,要监听谁函数名就用谁的 如监听 v-model的list
//newVal:表示改变后的值,即第一个形参,不要调换位置
//oldVal:表示改变前的值,
},
deep: true
}
}
也可以在//所监听的数据后面直接加字符串形式的方法名:
通过 watch 监听 data 数据的变化,数据发生变化时,执行 change 方法
watch: {
data: 'change' // 值可以为methods的方法名
},
methods: {
change(curVal,oldVal){
console.log(curVal,oldVal)
}
}
还有一种写法
监听A下拉框内容,改变B下拉框的数据
watch:{
"Form.AAA":{ // AAA 是data中的数据
handler(newName, oldName) {
console.log(newName, oldName,'监听成功');
},
deep: true
},
},