瀏覽代碼

[Feat 0000] 添加自动登录后保留query的功能

houzekong 9 月之前
父節點
當前提交
808ea0ed30
共有 2 個文件被更改,包括 6 次插入3 次删除
  1. 5 2
      src/hooks/vent/useAutoLogin.ts
  2. 1 1
      src/router/guard/permissionGuard.ts

+ 5 - 2
src/hooks/vent/useAutoLogin.ts

@@ -33,7 +33,10 @@ export function useAutoLogin() {
     return false;
   }
 
-  /** 用在路由守卫里,执行自动登录的逻辑,如果存在符合自动登录标准的query则执行自动登录,返回是否自动登录 */
+  /** 用在路由守卫里,执行自动登录的逻辑,如果存在符合自动登录标准的query则执行自动登录,返回是否自动登录
+   *
+   * 该方法需要修改query
+   * */
   async function doAutoLogin(route: RouteLocationNormalized): Promise<void> {
     if (!validateRoute(route)) return;
 
@@ -52,7 +55,7 @@ export function useAutoLogin() {
         goHome: false,
       });
       delete route.query[AUTO_LOGIN_URL_QUERY.key];
-      delete route.query['username'];
+      delete route.query['realname'];
       delete route.query['workNo'];
       return;
     } catch (e) {

+ 1 - 1
src/router/guard/permissionGuard.ts

@@ -65,7 +65,7 @@ export function createPermissionGuard(router: Router) {
     if (validateRoute(to)) {
       await doAutoLogin(to);
       // 自动登录后会动态添加路由,此处应当重定向到fullPath,否则会加载404页面内容
-      return next({ path: to.fullPath, replace: true });
+      return next({ path: to.fullPath, replace: true, query: to.query });
     }
 
     const token = userStore.getToken;