index.ts 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. import type { AppRouteRecordRaw, AppRouteModule } from '/@/router/types';
  2. import { PAGE_NOT_FOUND_ROUTE, REDIRECT_ROUTE, QIANKUN_ROUTE } from '/@/router/routes/basic';
  3. import { LAYOUT } from '/@/router/constant';
  4. // import { mainOutRoutes } from './mainOut';
  5. import { PageEnum } from '/@/enums/pageEnum';
  6. import { t } from '/@/hooks/web/useI18n';
  7. import { useGlobSetting, getRemoteSetting } from '/@/hooks/setting';
  8. // const modules = import.meta.glob('./modules/**/*.ts', { eager: true });
  9. const routeModuleList: AppRouteModule[] = [];
  10. // 加入到路由集合中
  11. // Object.keys(modules).forEach((key) => {
  12. // const mod = (modules as Recordable)[key].default || {};
  13. // const modList = Array.isArray(mod) ? [...mod] : [mod];
  14. // routeModuleList.push(...modList);
  15. // });
  16. await getRemoteSetting();
  17. const glob = useGlobSetting();
  18. export const asyncRoutes = [PAGE_NOT_FOUND_ROUTE, QIANKUN_ROUTE, ...routeModuleList];
  19. export const RootRoute: AppRouteRecordRaw = {
  20. path: '/',
  21. name: 'Root',
  22. redirect: glob.homePath || PageEnum.BASE_HOME,
  23. meta: {
  24. title: 'Root',
  25. },
  26. ver: '1',
  27. };
  28. export const LoginRoute: AppRouteRecordRaw = {
  29. path: '/login',
  30. name: 'Login',
  31. //新版后台登录,如果想要使用旧版登录放开即可
  32. component: () => import('/@/views/sys/login/Login.vue'),
  33. // component: () => import('/@/views/system/loginmini/MiniLogin.vue'),
  34. meta: {
  35. title: t('routes.basic.login'),
  36. },
  37. ver: '1',
  38. };
  39. export const Oauth2LoginRoute: AppRouteRecordRaw = {
  40. path: '/oauth2-app/login',
  41. name: 'oauth2-app-login',
  42. //新版钉钉免登录,如果想要使用旧版放开即可
  43. // component: () => import('/@/views/sys/login/OAuth2Login.vue'),
  44. component: () => import('/@/views/system/loginmini/OAuth2Login.vue'),
  45. meta: {
  46. title: t('routes.oauth2.login'),
  47. },
  48. ver: '1',
  49. };
  50. /**
  51. * 【通过token直接静默登录】流程办理登录页面 中转跳转
  52. */
  53. export const TokenLoginRoute: AppRouteRecordRaw = {
  54. path: '/tokenLogin',
  55. name: 'TokenLoginRoute',
  56. component: () => import('/@/views/sys/login/TokenLoginPage.vue'),
  57. meta: {
  58. title: '带token登录页面',
  59. ignoreAuth: true,
  60. },
  61. ver: '1',
  62. };
  63. export const ventModelRedirect: AppRouteRecordRaw = {
  64. path: '/redirectMicro',
  65. name: '',
  66. component: () => LAYOUT,
  67. meta: {
  68. title: '',
  69. ignoreAuth: true,
  70. },
  71. ver: '1',
  72. redirect: ''
  73. };
  74. // Basic routing without permission
  75. export const basicRoutes = [
  76. LoginRoute,
  77. RootRoute,
  78. ventModelRedirect,
  79. // ...mainOutRoutes,
  80. REDIRECT_ROUTE,
  81. PAGE_NOT_FOUND_ROUTE,
  82. TokenLoginRoute,
  83. Oauth2LoginRoute,
  84. ];