vue watch一个对象,同个值触发了2次,为什么
A<A :params={keyword:''}></A>
B
prop: {params: Object
}
watch: {
params: {
immediate: true,
deep: true,
handler (new, old) {
// 触发1次 new:{keyword:''} old: undefine
// 触发2次 new:{keyword:''} old: {keyword:''}
}
},
}
回答
你使用了immediate属性,将立即以表达式的当前值触发回调。
第二次则是对象的地址指针变了
immediate: true
会在侦听开始之后被立即调用,也就是说在watch里声明后会立即调用handle
,所以你第一次触发old值为undefined
以上是 vue watch一个对象,同个值触发了2次,为什么 的全部内容, 来源链接: utcz.com/a/41675.html