在开发过程中,有时我们需要取消watch监听器。
我们可以使用$watch方法来手动添加watch监听器,并且可以从组件实例中移除它。
这个方法的第一个参数是要监听的数据的名称,而第二个参数则表示要执行的回调函数。
export default {
data() {
return {
count: 0
}
},
created() {
this.stopWatch = this.$watch('count', (newCount, oldCount) => {
console.log(`count变成了${newCount},之前是${oldCount}`)
})
},
methods: {
stopWatching() {
this.stopWatch()
}
}
}
在上面的示例中,我们在组件创建时通过$watch方法添加了一个watch监听器,并将它保存到了stopWatch变量中。
当我们需要取消这个监听器时,我们只需要调用这个变量即可。