登录超时后,转到登录界面,因为Home.vue组件在keep-alive中,没有销毁,里面的计时器也没有销毁。

导致在登录界面仍然刷新后台数据。

尝试在跳转到登录路由的时候,clearInterval 计时器。但是不起作用。怀疑计时器重复启动了。但是判断为空之后再启动计时器,仍然不起作用。

最后发现Home.vue中有这么一句:import { setInterval } from "timers";

才想起来setInterval 是从timers中导入的。但是为什么不导入clearInterval 不报错呢,留个问题给大家思考吧。哈哈。

最后改成import { setInterval, clearInterval } from "timers";

成功搞定!

Logo

前往低代码交流专区

更多推荐