mounted中写监听 切换页面后还会执行怎么解决
时间: 2023-09-19 19:09:04 浏览: 191
vue 页面回退mounted函数不执行的解决方案
在Vue中,mounted生命周期钩子函数是在组件渲染完成后执行的,它只会在组件初次渲染时执行一次。因此,如果你在mounted中写了监听函数,切换页面后该监听函数会继续执行。
如果你想让监听函数只在当前页面生效,在组件销毁前需要将监听函数移除。可以在beforeDestroy生命周期钩子函数中移除监听函数,如下所示:
```
mounted() {
window.addEventListener('scroll', this.handleScroll)
},
beforeDestroy() {
window.removeEventListener('scroll', this.handleScroll)
}
```
这样,在组件销毁前,监听函数就会被移除,不会再执行。
阅读全文