如果watch中的两个data变量相互调用了,会发生死循环。
watch:{ 'a':{
handler:function(val,oldVal){ if(this.b == 0){ this.b = 1;
}else{ this.b = 0;
}
},
deep:true
}, 'b':{
handler:function(val,oldVal){ if(this.a == 0){ this.a = 1;
}else{ this.a = 0;
}
},
deep:true
},
}类似于这样,监听当a改变了去改变b,监听当b改变了去改变a。
这样的话a和b会一直死循环下去,是在写全选、反选的时候遇到这个问题,当用户勾选全选后,再取消勾选一个条目,全选也会相对应取消勾选,这样就一直死循环下去了。vue提供了相关的api解决这个问题吗?我在官网没有找到。
慕无忌1623718
ABOUTYOU
随时随地看视频慕课网APP
相关分类