21 lines
756 B
TypeScript
21 lines
756 B
TypeScript
import { createRouter, createWebHashHistory, RouteRecordRaw } from 'vue-router'
|
|
import { setupRouteGuard } from 'vue3-common/utils/permissionUtil'
|
|
|
|
// 使用 import.meta.glob 自动导入所有 src/router 目录下的 .ts 文件
|
|
const routeModules = import.meta.glob('./*.ts', { eager: true })
|
|
|
|
// 将所有模块的默认导出(即路由配置)合并成一个路由数组
|
|
const routes: RouteRecordRaw[] = Object.values(routeModules)
|
|
.map((module: any) => module.default) // 获取每个模块的默认导出
|
|
.flat() // 扁平化数组,确保所有路由项都在一个数组中
|
|
|
|
const router = createRouter({
|
|
history: createWebHashHistory(),
|
|
scrollBehavior: () => ({ top: 0 }),
|
|
routes
|
|
})
|
|
|
|
// setupRouteGuard(router)
|
|
|
|
export default router
|