From 656696be4b70513e94f1341db8d1c2d3f43b3e6d Mon Sep 17 00:00:00 2001
From: Your Name <123456>
Date: 星期三, 13 七月 2022 09:18:47 +0800
Subject: [PATCH] 登录跳转首页

---
 src/router/index.ts |  135 +++++++++++++++++++++-----------------------
 1 files changed, 65 insertions(+), 70 deletions(-)

diff --git a/src/router/index.ts b/src/router/index.ts
index 112fa0f..5fe7e90 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -10,9 +10,7 @@
 import { staticRoutes } from '/@/router/route';
 import { initFrontEndControlRoutes } from '/@/router/frontEnd';
 import { initBackEndControlRoutes } from '/@/router/backEnd';
-import {useUserInfo} from "/@/stores/userInfo";
-
-
+import { useUserInfo } from '/@/stores/userInfo';
 
 // 读取 `/src/stores/themeConfig.ts` 是否开启后端控制路由配置
 const storesThemeConfig = useThemeConfig(pinia);
@@ -20,89 +18,86 @@
 const { isRequestRoutes } = themeConfig.value;
 if (isRequestRoutes) staticRoutes.splice(0, 1);
 
-
 export const router = createRouter({
-	history: createWebHashHistory(),
-	routes: staticRoutes,
+    history: createWebHashHistory(),
+    routes: staticRoutes
 });
 
-
 export function formatFlatteningRoutes(arr: any) {
-	if (arr.length <= 0) return false;
-	for (let i = 0; i < arr.length; i++) {
-		if (arr[i].children) {
-			arr = arr.slice(0, i + 1).concat(arr[i].children, arr.slice(i + 1));
-		}
-	}
-	return arr;
+    if (arr.length <= 0) return false;
+    for (let i = 0; i < arr.length; i++) {
+        if (arr[i].children) {
+            arr = arr.slice(0, i + 1).concat(arr[i].children, arr.slice(i + 1));
+        }
+    }
+    return arr;
 }
-
 
 export function formatTwoStageRoutes(arr: any) {
-	if (arr.length <= 0) return false;
-	const newArr: any = [];
-	const cacheList: Array<string> = [];
-	arr.forEach((v: any) => {
-		if (v.path === '/') {
-			newArr.push({ component: v.component, name: v.name, path: v.path, redirect: v.redirect, meta: v.meta, children: [] });
-		} else {
-			// 判断是否是动态路由(xx/:id/:name),用于 tagsView 等中使用
-			// 修复:https://gitee.com/lyt-top/vue-next-admin/issues/I3YX6G
-			if (v.path.indexOf('/:') > -1) {
-				v.meta['isDynamic'] = true;
-				v.meta['isDynamicPath'] = v.path;
-			}
-			newArr[0].children.push({ ...v });
-			// 存 name 值,keep-alive 中 include 使用,实现路由的缓存
-			// 路径:/@/layout/routerView/parent.vue
-			if (newArr[0].meta.isKeepAlive && v.meta.isKeepAlive) {
-				cacheList.push(v.name);
-				const stores = useKeepALiveNames(pinia);
-				stores.setCacheKeepAlive(cacheList);
-			}
-		}
-	});
-	return newArr;
+    if (arr.length <= 0) return false;
+    const newArr: any = [];
+    const cacheList: Array<string> = [];
+    arr.forEach((v: any) => {
+        if (v.path === '/') {
+            newArr.push({ component: v.component, name: v.name, path: v.path, redirect: v.redirect, meta: v.meta, children: [] });
+        } else {
+            // 判断是否是动态路由(xx/:id/:name),用于 tagsView 等中使用
+            // 修复:https://gitee.com/lyt-top/vue-next-admin/issues/I3YX6G
+            if (v.path.indexOf('/:') > -1) {
+                v.meta['isDynamic'] = true;
+                v.meta['isDynamicPath'] = v.path;
+            }
+            newArr[0].children.push({ ...v });
+            // 存 name 值,keep-alive 中 include 使用,实现路由的缓存
+            // 路径:/@/layout/routerView/parent.vue
+            if (newArr[0].meta.isKeepAlive && v.meta.isKeepAlive) {
+                cacheList.push(v.name);
+                const stores = useKeepALiveNames(pinia);
+                stores.setCacheKeepAlive(cacheList);
+            }
+        }
+    });
+    return newArr;
 }
 
-// isRequestRoutes 为 true,则开启后端控制路由,路径:`/src/stores/themeConfig.ts`
-if (!isRequestRoutes) initFrontEndControlRoutes();
+// // isRequestRoutes 为 true,则开启后端控制路由,路径:`/src/stores/themeConfig.ts`
+// if (!isRequestRoutes) initFrontEndControlRoutes();
 
 // 路由加载前
 router.beforeEach(async (to, from, next) => {
-	NProgress.configure({ showSpinner: false });
-	if (to.meta.title) NProgress.start();
-	const token = Session.get('token');
-	if (to.path === '/login' && !token) {
-		next();
-		NProgress.done();
-	} else {
-		if (!token) {
-			next(`/login?redirect=${to.path}&params=${JSON.stringify(to.query ? to.query : to.params)}`);
-			Session.clear();
-			NProgress.done();
-		} else if (token && to.path === '/login') {
-			next('/home');
-			NProgress.done();
-		} else {
-			const storesRoutesList = useRoutesList(pinia);
-			const { routesList } = storeToRefs(storesRoutesList);
-			if (routesList.value.length === 0) {
-					// 后端控制路由:路由数据初始化,防止刷新时丢失
-				await initBackEndControlRoutes();
-					// 动态添加路由:防止非首页刷新时跳转回首页的问题
-					// 确保 addRoute() 时动态添加的路由已经被完全加载上去
-				next({ ...to, replace: true });
-			} else {
-				next();
-			}
-		}
-	}
+    NProgress.configure({ showSpinner: false });
+    if (to.meta.title) NProgress.start();
+    const token = Session.get('token');
+    if (to.path === '/login' && !token) {
+        next();
+        NProgress.done();
+    } else {
+        if (!token) {
+            next(`/login?redirect=${to.path}&params=${JSON.stringify(to.query ? to.query : to.params)}`);
+            Session.clear();
+            NProgress.done();
+        } else if (token && to.path === '/login') {
+            next('/homeMenu');
+            NProgress.done();
+        } else {
+            const storesRoutesList = useRoutesList(pinia);
+            const { routesList } = storeToRefs(storesRoutesList);
+            if (routesList.value.length === 0) {
+                // 后端控制路由:路由数据初始化,防止刷新时丢失
+                await initBackEndControlRoutes();
+                // 动态添加路由:防止非首页刷新时跳转回首页的问题
+                // 确保 addRoute() 时动态添加的路由已经被完全加载上去
+                next({ ...to, replace: true });
+            } else {
+                next();
+            }
+        }
+    }
 });
 
 // 路由加载后
 router.afterEach(() => {
-	NProgress.done();
+    NProgress.done();
 });
 
 // 导出路由

--
Gitblit v1.9.2