vue watch普通监听和深度监听实例详解(数组和对象)

丹桂飘香、秋风萧瑟、黄叶遍地。当头顶掠过个性的风,我知道,十一月来了。虽然红枫妖娆,野草还在坚持,可,白杨还是降下了翠绿的旗帜。一行雁鸣慢慢合拢台幕,盛宴即将结束。

下面通过一段代码给大家介绍vue watch的普通监听和深度监听,具体代码如下所示:

var vm=new Vue({ 
 data:{ 
 num:1, 
 obj:{ 
 name:'三儿', 
age:'21', 
sex:'女' 
} 
 }, 
watch:{ 
 num(val, oldVal){ 
 //普通的watch监听 
console.log(“num: “+val, oldVal); 
 }, 
 obj:{ 
 //深度监听,可监听到对象、数组的变化 
handler(val, oldVal){ 
 console.log(“obj.name: “+val.name, oldVal.name); 
 }, 
 deep:true 
 } 
 } 
 }) 
 vm.num=2 
 vm.obj.name='二儿'

下面单独给大家介绍下vue-watch 深度监听

watch:{} 对象,可监听数据,数据发生变化, 处理函数

目的: watch虽可监听,但只是浅监听,只监听数据第一层或者第二层,

何为第二层?

let obj = {name: 'xx', child: {age: 11}};

child之后的值就为第二层或者深层

实现目标: 如果 要监听一个对象中的属性,属性最高也是第二层了,watch可能监听不到,

所有要使用深度监听:

实现代码:

watch: {
' user.phone ' : {
handel:function() {  //特别注意,不能用箭头函数,箭头函数,this指向全局
处理函数
},
deep: true  //深度监听
}
}

总结

以上所述是小编给大家介绍的vue watch普通监听和深度监听实例详解(数组和对象),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

到此这篇关于vue watch普通监听和深度监听实例详解(数组和对象)就介绍到这了。人生之路上,永远没有后悔药可以买。我们无法回到过去,那就更加应该把握住现在,而不让将来的我们为现在而后悔。更多相关vue watch普通监听和深度监听实例详解(数组和对象)内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!

标签: vue watch