diff --git a/src/router/index.ts b/src/router/index.ts index fd0d5cc..e90b6c6 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -109,6 +109,10 @@ router.beforeEach((to: toRouteType, _from, next) => { else document.title = transformI18n(item.meta.title); }); } + /** 如果已经登录并存在登录信息后不能跳转到路由白名单,而是继续保持在当前页面 */ + function toCorrectRoute() { + whiteList.includes(to.fullPath) ? next(_from.fullPath) : next(); + } if (userInfo) { // 无权限跳转403页面 if (to.meta?.roles && !isOneOfArray(to.meta?.roles, userInfo?.roles)) { @@ -120,7 +124,7 @@ router.beforeEach((to: toRouteType, _from, next) => { openLink(to?.name as string); NProgress.done(); } else { - next(); + toCorrectRoute(); } } else { // 刷新 @@ -150,7 +154,7 @@ router.beforeEach((to: toRouteType, _from, next) => { } router.push(to.fullPath); }); - next(); + toCorrectRoute(); } } else { if (to.path !== "/login") {