|
|
|
@ -54,7 +54,9 @@ function setupAccessGuard(router: Router) {
|
|
|
|
if (coreRouteNames.includes(to.name as string)) {
|
|
|
|
if (coreRouteNames.includes(to.name as string)) {
|
|
|
|
if (to.path === LOGIN_PATH && accessStore.accessToken) {
|
|
|
|
if (to.path === LOGIN_PATH && accessStore.accessToken) {
|
|
|
|
return decodeURIComponent(
|
|
|
|
return decodeURIComponent(
|
|
|
|
(to.query?.redirect as string) || DEFAULT_HOME_PATH,
|
|
|
|
(to.query?.redirect as string) ||
|
|
|
|
|
|
|
|
userStore.userInfo?.homePath ||
|
|
|
|
|
|
|
|
DEFAULT_HOME_PATH,
|
|
|
|
);
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return true;
|
|
|
|
return true;
|
|
|
|
@ -72,7 +74,10 @@ function setupAccessGuard(router: Router) {
|
|
|
|
return {
|
|
|
|
return {
|
|
|
|
path: LOGIN_PATH,
|
|
|
|
path: LOGIN_PATH,
|
|
|
|
// 如不需要,直接删除 query
|
|
|
|
// 如不需要,直接删除 query
|
|
|
|
query: { redirect: encodeURIComponent(to.fullPath) },
|
|
|
|
query:
|
|
|
|
|
|
|
|
to.fullPath === DEFAULT_HOME_PATH
|
|
|
|
|
|
|
|
? {}
|
|
|
|
|
|
|
|
: { redirect: encodeURIComponent(to.fullPath) },
|
|
|
|
// 携带当前跳转的页面,登录后重新跳转该页面
|
|
|
|
// 携带当前跳转的页面,登录后重新跳转该页面
|
|
|
|
replace: true,
|
|
|
|
replace: true,
|
|
|
|
};
|
|
|
|
};
|
|
|
|
@ -102,7 +107,10 @@ function setupAccessGuard(router: Router) {
|
|
|
|
accessStore.setAccessMenus(accessibleMenus);
|
|
|
|
accessStore.setAccessMenus(accessibleMenus);
|
|
|
|
accessStore.setAccessRoutes(accessibleRoutes);
|
|
|
|
accessStore.setAccessRoutes(accessibleRoutes);
|
|
|
|
accessStore.setIsAccessChecked(true);
|
|
|
|
accessStore.setIsAccessChecked(true);
|
|
|
|
const redirectPath = (from.query.redirect ?? to.fullPath) as string;
|
|
|
|
const redirectPath = (from.query.redirect ??
|
|
|
|
|
|
|
|
(to.path === DEFAULT_HOME_PATH
|
|
|
|
|
|
|
|
? userInfo.homePath || DEFAULT_HOME_PATH
|
|
|
|
|
|
|
|
: to.fullPath)) as string;
|
|
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
return {
|
|
|
|
...router.resolve(decodeURIComponent(redirectPath)),
|
|
|
|
...router.resolve(decodeURIComponent(redirectPath)),
|
|
|
|
|