index.ts 877 B

1234567891011121314151617181920212223242526272829303132
  1. import type { RouteRecordNormalized } from 'vue-router';
  2. const modules = import.meta.glob('./modules/*.ts', { eager: true });
  3. console.log(modules, 'modules');
  4. const externalModules = import.meta.glob('./externalModules/*.ts', {
  5. eager: true,
  6. });
  7. console.log(externalModules, 'externalModules');
  8. function formatModules(_modules: any, result: RouteRecordNormalized[]) {
  9. Object.keys(_modules).forEach((key) => {
  10. const defaultModule = _modules[key].default;
  11. if (!defaultModule) return;
  12. const moduleList = Array.isArray(defaultModule)
  13. ? [...defaultModule]
  14. : [defaultModule];
  15. result.push(...moduleList);
  16. });
  17. return result;
  18. }
  19. export const appRoutes: RouteRecordNormalized[] = formatModules(modules, []);
  20. console.log(appRoutes, 'appRoutes');
  21. export const appExternalRoutes: RouteRecordNormalized[] = formatModules(
  22. externalModules,
  23. []
  24. );