mirror of
https://github.com/pure-admin/vue-pure-admin.git
synced 2025-11-03 13:44:47 +08:00
refactor: router (#145)
* refactor: router * perf: router * perf: router * perf: router Co-authored-by: lrl <742798240@qq.com>
This commit is contained in:
39
src/router/modules/index.ts
Normal file
39
src/router/modules/index.ts
Normal file
@@ -0,0 +1,39 @@
|
||||
// 静态路由
|
||||
import tabsRouter from "./tabs";
|
||||
import homeRouter from "./home";
|
||||
import errorRouter from "./error";
|
||||
import editorRouter from "./editor";
|
||||
import nestedRouter from "./nested";
|
||||
import externalLink from "./externalLink";
|
||||
import flowChartRouter from "./flowchart";
|
||||
import remainingRouter from "./remaining";
|
||||
import componentsRouter from "./components";
|
||||
import { RouteRecordRaw, RouteComponent } from "vue-router";
|
||||
|
||||
import {
|
||||
ascending,
|
||||
formatTwoStageRoutes,
|
||||
formatFlatteningRoutes
|
||||
} from "../utils";
|
||||
|
||||
// 原始静态路由(未做任何处理)
|
||||
const routes = [
|
||||
tabsRouter,
|
||||
homeRouter,
|
||||
errorRouter,
|
||||
nestedRouter,
|
||||
externalLink,
|
||||
editorRouter,
|
||||
flowChartRouter,
|
||||
componentsRouter
|
||||
];
|
||||
|
||||
// 导出处理后的静态路由(三级及以上的路由全部拍成二级)
|
||||
export const constantRoutes: Array<RouteRecordRaw> = formatTwoStageRoutes(
|
||||
formatFlatteningRoutes(ascending(routes))
|
||||
);
|
||||
|
||||
// 用于渲染菜单,保持原始层级
|
||||
export const constantMenus: Array<RouteComponent> = ascending(routes).concat(
|
||||
...remainingRouter
|
||||
);
|
||||
@@ -15,7 +15,7 @@ const nestedRouter = {
|
||||
children: [
|
||||
{
|
||||
path: "/nested/menu1",
|
||||
component: () => import("/@/views/nested/menu1/index.vue"),
|
||||
component: () => import("/@/layout/routerView/parent.vue"),
|
||||
name: "Menu1",
|
||||
meta: {
|
||||
title: "message.hsmenu1",
|
||||
@@ -38,7 +38,7 @@ const nestedRouter = {
|
||||
},
|
||||
{
|
||||
path: "/nested/menu1/menu1-2",
|
||||
component: () => import("/@/views/nested/menu1/menu1-2/index.vue"),
|
||||
component: () => import("/@/layout/routerView/parent.vue"),
|
||||
name: "Menu1-2",
|
||||
redirect: "/nested/menu1/menu1-2/menu1-2-1",
|
||||
meta: {
|
||||
|
||||
@@ -4,7 +4,7 @@ const tabsRouter = {
|
||||
path: "/tabs",
|
||||
name: "reTabs",
|
||||
component: Layout,
|
||||
redirect: "/tags/index",
|
||||
redirect: "/tabs/index",
|
||||
meta: {
|
||||
icon: "IF-team-icontabs",
|
||||
title: "message.hstabs",
|
||||
@@ -32,7 +32,8 @@ const tabsRouter = {
|
||||
showLink: false,
|
||||
i18n: false,
|
||||
dynamicLevel: 3,
|
||||
realPath: "/tabs/detail"
|
||||
realPath: "/tabs/detail",
|
||||
refreshRedirect: "/tabs/index"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user