vue3终止watch监听的办法是:
将watch赋值给一个变量,当达到条件调用watch赋值的那个变量就可以终止监听了。如:
let stopWatch = watch(() => state.room, (newval, oldval) => {
console.log("新值:", newval, "老值:", oldval);
},
{deep:true}//复杂嵌套的数据没有这个指令是无法检测到的。
);
setTimeout(()=>{
// 停止监听
stopWatch()
}, 5000)
重新启动监听的办法就是通过把监听器重新赋值给变量
stopWatch = watch(
() => search,
(newval, oldval) => {
console.log("新值:", newval, "老值:", oldval);
},
{ immediate: true, deep: true } //复杂嵌套的数据没有这个指令是无法检测到的。
);