mirror of
https://github.com/soybeanjs/soybean-admin.git
synced 2025-11-15 05:03:44 +08:00
refactor(projects): 路由文件夹拆分模块,代码重构
This commit is contained in:
33
src/router/modules/dashboard.ts
Normal file
33
src/router/modules/dashboard.ts
Normal file
@@ -0,0 +1,33 @@
|
||||
import { Dashboard } from '@vicons/carbon';
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { EnumRoutePath, EnumRouteTitle } from '@/enum';
|
||||
import { BasicLayout } from '@/layouts';
|
||||
import { RouteNameMap } from '../helpers';
|
||||
import { DashboardWorkbench } from '../components';
|
||||
import { ROUTE_HOME } from '../routes';
|
||||
|
||||
const DASHBOARD: CustomRoute = {
|
||||
name: RouteNameMap.get('dashboard'),
|
||||
path: EnumRoutePath.dashboard,
|
||||
component: BasicLayout,
|
||||
redirect: { name: RouteNameMap.get('dashboard_analysis') },
|
||||
meta: {
|
||||
title: EnumRouteTitle.dashboard,
|
||||
icon: Dashboard
|
||||
},
|
||||
children: [
|
||||
ROUTE_HOME,
|
||||
{
|
||||
name: RouteNameMap.get('dashboard_workbench'),
|
||||
path: EnumRoutePath.dashboard_workbench,
|
||||
component: DashboardWorkbench,
|
||||
meta: {
|
||||
keepAlive: true,
|
||||
requiresAuth: true,
|
||||
title: EnumRouteTitle.dashboard_workbench
|
||||
}
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
export default DASHBOARD;
|
||||
52
src/router/modules/exception.ts
Normal file
52
src/router/modules/exception.ts
Normal file
@@ -0,0 +1,52 @@
|
||||
import { ExceptionOutlined } from '@vicons/antd';
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { EnumRoutePath, EnumRouteTitle } from '@/enum';
|
||||
import { BasicLayout } from '@/layouts';
|
||||
import { RouteNameMap } from '../helpers';
|
||||
import { Exception403, Exception404, Exception500 } from '../components';
|
||||
|
||||
const EXCEPTION: CustomRoute = {
|
||||
name: RouteNameMap.get('exception'),
|
||||
path: EnumRoutePath.exception,
|
||||
component: BasicLayout,
|
||||
redirect: { name: RouteNameMap.get('exception_403') },
|
||||
meta: {
|
||||
requiresAuth: true,
|
||||
title: EnumRouteTitle.exception,
|
||||
icon: ExceptionOutlined
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: RouteNameMap.get('exception_403'),
|
||||
path: EnumRoutePath.exception_403,
|
||||
component: Exception403,
|
||||
meta: {
|
||||
requiresAuth: true,
|
||||
title: EnumRouteTitle.exception_403,
|
||||
fullPage: true
|
||||
}
|
||||
},
|
||||
{
|
||||
name: RouteNameMap.get('exception_404'),
|
||||
path: EnumRoutePath.exception_404,
|
||||
component: Exception404,
|
||||
meta: {
|
||||
requiresAuth: true,
|
||||
title: EnumRouteTitle.exception_404,
|
||||
fullPage: true
|
||||
}
|
||||
},
|
||||
{
|
||||
name: RouteNameMap.get('exception_500'),
|
||||
path: EnumRoutePath.exception_500,
|
||||
component: Exception500,
|
||||
meta: {
|
||||
requiresAuth: true,
|
||||
title: EnumRouteTitle.exception_500,
|
||||
fullPage: true
|
||||
}
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
export default EXCEPTION;
|
||||
6
src/router/modules/index.ts
Normal file
6
src/router/modules/index.ts
Normal file
@@ -0,0 +1,6 @@
|
||||
import ROOT from './root';
|
||||
import DASHBOARD from './dashboard';
|
||||
import EXCEPTION from './exception';
|
||||
import MULTI_MENU from './multiMenu';
|
||||
|
||||
export default [ROOT, DASHBOARD, EXCEPTION, MULTI_MENU];
|
||||
44
src/router/modules/multiMenu.ts
Normal file
44
src/router/modules/multiMenu.ts
Normal file
@@ -0,0 +1,44 @@
|
||||
import { Menu } from '@vicons/carbon';
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { EnumRoutePath, EnumRouteTitle } from '@/enum';
|
||||
import { BasicLayout, BasicChildLayout } from '@/layouts';
|
||||
import { RouteNameMap } from '../helpers';
|
||||
import { MultiMenuFirstSecond } from '../components';
|
||||
|
||||
const MULTI_MENU: CustomRoute = {
|
||||
name: RouteNameMap.get('multi-menu'),
|
||||
path: EnumRoutePath['multi-menu'],
|
||||
component: BasicLayout,
|
||||
redirect: { name: RouteNameMap.get('multi-menu_first') },
|
||||
meta: {
|
||||
title: EnumRouteTitle['multi-menu'],
|
||||
icon: Menu
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: RouteNameMap.get('multi-menu_first'),
|
||||
path: EnumRoutePath['multi-menu_first'],
|
||||
component: BasicChildLayout,
|
||||
redirect: { name: RouteNameMap.get('multi-menu_first_second') },
|
||||
meta: {
|
||||
keepAlive: true,
|
||||
requiresAuth: true,
|
||||
title: EnumRouteTitle['multi-menu_first']
|
||||
},
|
||||
children: [
|
||||
{
|
||||
name: RouteNameMap.get('multi-menu_first_second'),
|
||||
path: EnumRoutePath['multi-menu_first_second'],
|
||||
component: MultiMenuFirstSecond,
|
||||
meta: {
|
||||
keepAlive: true,
|
||||
requiresAuth: true,
|
||||
title: EnumRouteTitle['multi-menu_first_second']
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
export default MULTI_MENU;
|
||||
17
src/router/modules/root.ts
Normal file
17
src/router/modules/root.ts
Normal file
@@ -0,0 +1,17 @@
|
||||
import type { CustomRoute } from '@/interface';
|
||||
import { EnumRoutePath } from '@/enum';
|
||||
import { BasicLayout } from '@/layouts';
|
||||
import { RouteNameMap } from '../helpers';
|
||||
import { ROUTE_HOME } from '../routes';
|
||||
|
||||
const ROOT: CustomRoute = {
|
||||
name: RouteNameMap.get('root'),
|
||||
path: EnumRoutePath.root,
|
||||
component: BasicLayout,
|
||||
redirect: { name: ROUTE_HOME.name },
|
||||
meta: {
|
||||
isNotMenu: true
|
||||
}
|
||||
};
|
||||
|
||||
export default ROOT;
|
||||
Reference in New Issue
Block a user