| | |
| | | |
| | | /** 处理动态路由(后端返回的路由) */ |
| | | function handleAsyncRoutes(routeList) { |
| | | if (routeList.length === 0) { |
| | | if (routeList?.length === 0) { |
| | | usePermissionStoreHook().handleWholeMenus(routeList); |
| | | } else { |
| | | formatFlatteningRoutes(addAsyncRoutes(routeList)).map( |
| | |
| | | * @returns 返回处理后的一维路由 |
| | | */ |
| | | function formatFlatteningRoutes(routesList: RouteRecordRaw[]) { |
| | | if (routesList.length === 0) return routesList; |
| | | if (routesList?.length === 0) return routesList; |
| | | let hierarchyList = buildHierarchyTree(routesList); |
| | | for (let i = 0; i < hierarchyList.length; i++) { |
| | | if (hierarchyList[i].children) { |
| | |
| | | * @returns 返回将一维数组重新处理成规定路由的格式 |
| | | */ |
| | | function formatTwoStageRoutes(routesList: RouteRecordRaw[]) { |
| | | if (routesList.length === 0) return routesList; |
| | | if (routesList?.length === 0) return routesList; |
| | | const newRoutesList: RouteRecordRaw[] = []; |
| | | routesList.forEach((v: RouteRecordRaw) => { |
| | | if (v.path === "/") { |
| | |
| | | usePermissionStoreHook().wholeMenus[0]?.children[0] |
| | | ); |
| | | tag && useMultiTagsStoreHook().handleTags("push", topMenu); |
| | | console.log(topMenu, "topMenu"); |
| | | |
| | | return topMenu; |
| | | } |
| | | |