⚠️ 重要 ⚠️ 在进一步操作之前,请检查下列选项。如果您忽视此模板或者没有提供关键信息,您的 Issue 将直接被关闭
- 已阅读 文档 .
- 确保您的代码已是最新或者所报告的 Bug 在最新版本中可以重现. (部分 Bug 可能已经在最近的代码中修复)
- 已在 Issues 中搜索了相关的关键词
- 不是 ant design vue 组件库的 Bug
描述 Bug
页面多次刷新的时候会导致memeory中存储的,token 失效
src\router\guard\permissionGuard.ts 中调用 src\utils\auth\index.ts 中的 getToken(), 返回值 undefined;
我暂时打算把initPersistentMemory(); 放到 main.js,而不是在 persistent.ts 中去调用,,也没能解决问题
复现 Bug
两次刷新就会出现;
页面多次刷新的时候会导致memeory中存储的,token 失效
src\router\guard\permissionGuard.ts 中调用 src\utils\auth\index.ts 中的 getToken(), 返回值 undefined
系统信息
- 操作系统:win10
- Node 版本: 14+
- 包管理器 (yarn) 及其版本:
2条答案
按热度按时间tuwxkamq1#
memory.js 设计的很巧妙,但是带来的问题也太多,排查到了应该是这个问题所在。 有关登录方面,官方还是再梳理梳理逻辑,或者写一下文档
// const expire = item.time;
// if (expire > now) {
// this.set(k, item.value, expire);
// }
const time = item.time;
if (time > now) {
const expire = time - now;
this.set(k, item.value, expire);
}
falq053o2#
现在代码中在路由钩子里是判断如果在登录的路由,会清空掉memory的cache的。localstorage中的信息依然存在。所以可以从memory对象的this.cache排查问题