vue watch普通监听和深度监听实例详解(数组和对象)
下面通过一段代码给大家介绍vuewatch的普通监听和深度监听,具体代码如下所示:
varvm=newVue({
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虽可监听,但只是浅监听,只监听数据第一层或者第二层,
何为第二层?
letobj={name:'xx',child:{age:11}};
child之后的值就为第二层或者深层
实现目标:如果要监听一个对象中的属性,属性最高也是第二层了,watch可能监听不到,
所有要使用深度监听:
实现代码:
watch:{
'user.phone':{
handel:function(){//特别注意,不能用箭头函数,箭头函数,this指向全局
处理函数
},
deep:true//深度监听
}
}
总结
以上所述是小编给大家介绍的vuewatch普通监听和深度监听实例详解(数组和对象),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!