//当页面停留在原始页面时,不做任何操作5分钟之后刷新页面
const timeoutId = ref(null);
const timeoutNumber = ref(0);
const startTimer = () => {
timeoutId.value = setTimeout(() => {
timeoutNumber.value=timeoutNumber.value+60;
console.log(timeoutNumber.value)
if (timeoutNumber.value >= 300) {
location.reload();
clearTimeout(timeoutId.value);
timeoutNumber.value = 0;
}
startTimer(); // 递归调用自身以持续计数
}, 60000);
};
const handleActivity = () => {
clearTimeout(timeoutId.value);
timeoutNumber.value = 0;
startTimer();
};
onMounted(() => {
// 初始化逻辑
init();
// 在组件挂载后立即清除可能存在的定时器,然后开始新的定时器
if (timeoutId.value) {
clearTimeout(timeoutId.value);
}
startTimer();
document.addEventListener('mousedown', handleActivity);
});
onBeforeUnmount(() => {
if (timeoutId.value) {
clearTimeout(timeoutId.value); // 清除定时器
}
document.removeEventListener('mousedown', handleActivity); // 移除事件监听器
});
09-28
3553
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
06-27
407
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
06-05
3959
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
09-09
1359
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
09-05
1341
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
08-03