dbsd_kczx/src/router/routes/index.ts

99 lines
2.9 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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';
// 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 });
// console.log(`🚀 ~ modules:`, modules)
const routeModuleList: AppRouteModule[] = [];
const routeModuleStaticList: AppRouteModule[] = [];
// 加入到路由集合中
Object.keys(modules).forEach((key) => {
const mod = (modules as Recordable)[key].default || {};
const modList = Array.isArray(mod) ? [...mod] : [mod];
if(modList[0] && modList[0]?.meta?.isAddStaticPath){
routeModuleStaticList.push(...modList)
}
// console.log(`🚀 ~ Object.keys ~ modList:`, modList, routeModuleStaticList)
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'),
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,
},
};
// console.log('NoTokenSiteRoute =>', NoTokenSiteRoute, modules, Oauth2LoginRoute);
/**
* 门户页
*/
// export const NoTokenSiteRoute: AppRouteRecordRaw = site;
// Basic routing without permission
export const basicRoutes = [
LoginRoute,
RootRoute,
...mainOutRoutes,
REDIRECT_ROUTE,
PAGE_NOT_FOUND_ROUTE,
TokenLoginRoute,
Oauth2LoginRoute,
...routeModuleStaticList,
];