dbsd_kczx/src/router/routes/index.ts

99 lines
2.9 KiB
TypeScript
Raw Normal View History

2021-10-20 14:32:09 +08:00
import type { AppRouteRecordRaw, AppRouteModule } from '/@/router/types';
import { PAGE_NOT_FOUND_ROUTE, REDIRECT_ROUTE } from '/@/router/routes/basic';
import { mainOutRoutes } from './mainOut';
import { PageEnum } from '/@/enums/pageEnum';
import { t } from '/@/hooks/web/useI18n';
2024-05-06 19:41:47 +08:00
// import NoTokenSiteRoute from './modules/site/site';
// import NoTokenZyRoute from './modules/zy/zy';
// import NoTokenSiteRoute from './modules/site.ts';
// const NoTokenSiteRoute = import.meta.glob('./modules/site/site.ts', { eager: true });
const modules = import.meta.glob('./modules/**/*.ts', { eager: true });
2021-10-20 14:32:09 +08:00
2024-05-06 19:41:47 +08:00
// console.log(`🚀 ~ modules:`, modules)
2021-10-20 14:32:09 +08:00
const routeModuleList: AppRouteModule[] = [];
2024-05-06 19:41:47 +08:00
const routeModuleStaticList: AppRouteModule[] = [];
// 加入到路由集合中
2021-10-20 14:32:09 +08:00
Object.keys(modules).forEach((key) => {
const mod = (modules as Recordable)[key].default || {};
2021-10-20 14:32:09 +08:00
const modList = Array.isArray(mod) ? [...mod] : [mod];
2024-05-06 19:41:47 +08:00
if(modList[0] && modList[0]?.meta?.isAddStaticPath){
routeModuleStaticList.push(...modList)
}
2024-05-09 20:22:55 +08:00
// console.log(`🚀 ~ Object.keys ~ modList:`, modList, routeModuleStaticList)
2021-10-20 14:32:09 +08:00
routeModuleList.push(...modList);
});
export const asyncRoutes = [PAGE_NOT_FOUND_ROUTE, ...routeModuleList];
export const RootRoute: AppRouteRecordRaw = {
path: '/',
name: 'Root',
redirect: PageEnum.BASE_HOME,
meta: {
title: 'Root',
},
};
export const LoginRoute: AppRouteRecordRaw = {
path: '/login',
name: 'Login',
//新版后台登录,如果想要使用旧版登录放开即可
// component: () => import('/@/views/sys/login/Login.vue'),
component: () => import('/@/views/system/loginmini/MiniLogin.vue'),
2021-10-20 14:32:09 +08:00
meta: {
title: t('routes.basic.login'),
},
};
//update-begin---author:wangshuai ---date:20220629 forauth2登录页面路由------------
export const Oauth2LoginRoute: AppRouteRecordRaw = {
path: '/oauth2-app/login',
name: 'oauth2-app-login',
//新版钉钉免登录,如果想要使用旧版放开即可
// component: () => import('/@/views/sys/login/OAuth2Login.vue'),
component: () => import('/@/views/system/loginmini/OAuth2Login.vue'),
meta: {
title: t('routes.oauth2.login'),
},
};
//update-end---author:wangshuai ---date:20220629 forauth2登录页面路由------------
/**
* token直接静默登录
*/
export const TokenLoginRoute: AppRouteRecordRaw = {
path: '/tokenLogin',
name: 'TokenLoginRoute',
component: () => import('/@/views/sys/login/TokenLoginPage.vue'),
meta: {
title: '带token登录页面',
ignoreAuth: true,
},
};
2023-04-01 22:06:31 +08:00
// console.log('NoTokenSiteRoute =>', NoTokenSiteRoute, modules, Oauth2LoginRoute);
/**
*
*/
// export const NoTokenSiteRoute: AppRouteRecordRaw = site;
2021-10-20 14:32:09 +08:00
// Basic routing without permission
export const basicRoutes = [
LoginRoute,
RootRoute,
...mainOutRoutes,
REDIRECT_ROUTE,
PAGE_NOT_FOUND_ROUTE,
TokenLoginRoute,
Oauth2LoginRoute,
2024-05-06 19:41:47 +08:00
...routeModuleStaticList,
];