重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
下面通过一段代码给大家介绍vue watch的普通监听和深度监听,具体代码如下所示:
成都创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都做网站、成都网站设计、洛南网络推广、小程序设计、洛南网络营销、洛南企业策划、洛南品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联公司为所有大学生创业者提供洛南建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
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普通监听和深度监听实例详解(数组和对象),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对创新互联网站的支持!