export default {
data() {
return {
time: null,
};
},
mounted() {
// 当组件被挂载时,检查当前路由是否是我们想要的路由
if (this.$route.path === '/aaa') {
// 如果是,设置定时器
this.time = setInterval(() => {
}, 5000);
}
},
beforeDestroy() {
// 当组件即将被销毁时,清除定时器
if (this.time) {
clearInterval(this.time);
this.time = null;
}
},
watch: {
'$route'(to, from) {
// 监听路由变化
if (to.path === '/aaa') {
// 如果进入我们想要的路由,设置定时器
if (!this.time) {
this.time = setInterval(() => {
console.log('Time triggered!');
}, 5000);
}
} else {
// 如果离开我们想要的路由,清除定时器
if (this.time) {
clearInterval(this.time);
this.time = null;
}
}
},
},
};
解决方法:js定时器只在当前路由触发这个接口,不在当前路由不可以触发,但是不生效,一直触发
于 2024-02-22 14:08:58 首次发布