关于vue中watch侦听器 包括handler的理解
首先如果如果对handler不理解,想把它想象一个中介(桥梁),为什么这么说,请看代码分析
1.平常我们在使用watch监听的时候基础的用法也是简单的用法
// 第一种
watch:{
num(){
console.log('简单的监听')
// 记住你监听的数据要和()前的数据保持一致,比如我要侦听guker数据,
// guker(){comsole.log('监听的数据是guker')}
}
}
// 第二种
watch:{
num:function(){
console.log("简单的监听")
}
}
2.这两种监听的只能满足简单的使用,如果当我们监听的数据是对象的形式的时候或者其他高级侦听的时候,需要使用对象形式进行侦听
watch:{
object:{
// 此时就出现了handler,我们不能在写object()或者object:function了,
//但是我们需要个函数啊,怎么办呢?此时就用到了handler,它是固定的这七个字母,
//咱们不能改变它。它的作用是什么呢?
//他的作用就是相当于上面的第二种方法的function,进行监听时触发的回调函数
handler(){
console.log("当object中的属性值改变时我要给你个么么哒")
// 但是能给么么哒吗,不能,为啥子?我们要对象需要深度监听,所以我们要加deep
// 回到最开始,所以我会把handler当成一个中介(而且是不收中介费的中介)
},
deep:true
// 这样就能给一个么么哒了
}
}