vue-vben-admin/src/router/routes/index.ts

39 lines
1.0 KiB
TypeScript
Raw Normal View History

2020-09-28 20:19:10 +08:00
import type { AppRouteRecordRaw, AppRouteModule } from '/@/router/types';
2020-12-03 21:49:32 +08:00
import { PAGE_NOT_FOUND_ROUTE, REDIRECT_ROUTE, LAYOUT } from '../constant';
import { PageEnum } from '/@/enums/pageEnum';
2020-10-16 22:03:44 +08:00
import modules from 'globby!/@/router/routes/modules/**/*.@(ts)';
2020-09-28 20:19:10 +08:00
2020-10-30 21:32:05 +08:00
const routeModuleList: AppRouteModule[] = [];
2020-09-28 20:19:10 +08:00
2020-10-16 22:03:44 +08:00
Object.keys(modules).forEach((key) => {
2020-12-03 21:49:32 +08:00
const mod = Array.isArray(modules[key]) ? [...modules[key]] : [modules[key]];
routeModuleList.push(...mod);
2020-10-16 22:03:44 +08:00
});
2020-12-03 21:49:32 +08:00
export const asyncRoutes = [PAGE_NOT_FOUND_ROUTE, ...routeModuleList];
2020-10-30 21:32:05 +08:00
2020-12-03 21:49:32 +08:00
const MainRoute: AppRouteModule = {
2020-09-28 20:19:10 +08:00
path: '/',
2020-12-03 21:49:32 +08:00
name: 'MainRoute',
component: LAYOUT,
redirect: PageEnum.BASE_HOME,
2020-09-28 20:19:10 +08:00
meta: {
2020-12-08 00:22:55 +08:00
icon: 'bx:bx-home',
2020-12-03 21:49:32 +08:00
title: 'routes.dashboard.dashboard',
2020-09-28 20:19:10 +08:00
},
};
2020-10-14 21:08:07 +08:00
export const LoginRoute: AppRouteRecordRaw = {
path: '/login',
name: 'Login',
component: () => import('/@/views/sys/login/Login.vue'),
meta: {
2020-11-26 21:10:21 +08:00
title: 'routes.basic.login',
2020-10-14 21:08:07 +08:00
},
};
2020-09-28 20:19:10 +08:00
// 基础路由 不用权限
2020-12-03 21:49:32 +08:00
export const basicRoutes = [LoginRoute, MainRoute, REDIRECT_ROUTE];