From aa14d6bdeaa41506664fb653f91fa3aacb6e1983 Mon Sep 17 00:00:00 2001 From: Charles7c Date: Sat, 4 Jan 2025 19:45:44 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E4=BC=98=E5=8C=96=E8=B7=AF?= =?UTF-8?q?=E7=94=B1=E5=AE=88=E5=8D=AB=E9=94=99=E8=AF=AF=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/router/guard.ts | 34 ++++++++++++++-------------------- 1 file changed, 14 insertions(+), 20 deletions(-) diff --git a/src/router/guard.ts b/src/router/guard.ts index 8464a85f..79046a07 100644 --- a/src/router/guard.ts +++ b/src/router/guard.ts @@ -91,27 +91,21 @@ export const setupRouterGuard = (router: Router) => { next() } else { if (!hasRouteFlag) { - try { - await userStore.getInfo() - if (userStore.userInfo.pwdExpired && to.path !== '/pwdExpired') { - Message.warning('密码已过期,请修改密码') - next('/pwdExpired') - } - const accessRoutes = await routeStore.generateRoutes() - accessRoutes.forEach((route) => { - if (!isHttp(route.path)) { - router.addRoute(route) // 动态添加可访问路由表 - } - }) - hasRouteFlag = true - // 确保添加路由已完成 - // 设置 replace: true, 因此导航将不会留下历史记录 - next({ ...to, replace: true }) - } catch (error: any) { - // 过程中发生任何错误,都直接重置 Token,并重定向到登录页面 - await userStore.logoutCallBack() - next(`/login?redirect=${to.path}`) + await userStore.getInfo() + if (userStore.userInfo.pwdExpired && to.path !== '/pwdExpired') { + Message.warning('密码已过期,请修改密码') + next('/pwdExpired') } + const accessRoutes = await routeStore.generateRoutes() + accessRoutes.forEach((route) => { + if (!isHttp(route.path)) { + router.addRoute(route) // 动态添加可访问路由表 + } + }) + hasRouteFlag = true + // 确保添加路由已完成 + // 设置 replace: true, 因此导航将不会留下历史记录 + next({ ...to, replace: true }) } else { next() }