fix: router

This commit is contained in:
xiaoxian521 2022-02-27 11:17:45 +08:00
parent bc300eab18
commit 9927e6f217

View File

@ -11,6 +11,7 @@ import { loadEnv } from "../../build";
import Layout from "/@/layout/index.vue"; import Layout from "/@/layout/index.vue";
import { useTimeoutFn } from "@vueuse/core"; import { useTimeoutFn } from "@vueuse/core";
import { RouteConfigs } from "/@/layout/types"; import { RouteConfigs } from "/@/layout/types";
import { buildHierarchyTree } from "/@/utils/tree";
import { usePermissionStoreHook } from "/@/store/modules/permission"; import { usePermissionStoreHook } from "/@/store/modules/permission";
// https://cn.vitejs.dev/guide/features.html#glob-import // https://cn.vitejs.dev/guide/features.html#glob-import
const modulesRoutes = import.meta.glob("/src/views/**/*.{vue,tsx}"); const modulesRoutes = import.meta.glob("/src/views/**/*.{vue,tsx}");
@ -146,14 +147,15 @@ function initRouter(name: string) {
*/ */
function formatFlatteningRoutes(routesList: RouteRecordRaw[]) { function formatFlatteningRoutes(routesList: RouteRecordRaw[]) {
if (routesList.length === 0) return routesList; if (routesList.length === 0) return routesList;
for (let i = 0; i < routesList.length; i++) { let hierarchyList = buildHierarchyTree(routesList);
if (routesList[i].children) { for (let i = 0; i < hierarchyList.length; i++) {
routesList = routesList if (hierarchyList[i].children) {
hierarchyList = hierarchyList
.slice(0, i + 1) .slice(0, i + 1)
.concat(routesList[i].children, routesList.slice(i + 1)); .concat(hierarchyList[i].children, hierarchyList.slice(i + 1));
} }
} }
return routesList; return hierarchyList;
} }
/** /**