| | |
| | | import { createRouter, createWebHistory } from 'vue-router' |
| | | import HomeView from '../views/HomeView.vue' |
| | | import MenuView from '../views/system/menu/index.vue' |
| | | import LoginView from '../views/login/LoginView.vue' |
| | | import UserLoginView from '../views/system/userLogin/index.vue' |
| | | import UserView from '../views/system/user/index.vue' |
| | | import { get } from '@/utils/request.js' |
| | | |
| | | const router = createRouter({ |
| | | history: createWebHistory(import.meta.env.BASE_URL), |
| | |
| | | { |
| | | path: '/', |
| | | name: '主页', |
| | | component: HomeView, |
| | | component: () => import('@/views/HomeView.vue'), |
| | | meta: { |
| | | keepAlive: true // 设置keepAlive,让此路由页面被缓存 |
| | | }, |
| | |
| | | { |
| | | path: '/login', |
| | | name: '登录', |
| | | component: LoginView, |
| | | component: () => import('@/views/login/LoginView.vue'), |
| | | }, |
| | | { |
| | | path: '/system/menu', |
| | | name: '菜单管理', |
| | | component: MenuView, |
| | | meta: { |
| | | keepAlive: true // 设置keepAlive,让此路由页面被缓存 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/system/userLogin', |
| | | name: '登录日志', |
| | | component: UserLoginView, |
| | | meta: { |
| | | keepAlive: true // 设置keepAlive,让此路由页面被缓存 |
| | | }, |
| | | }, |
| | | { |
| | | path: '/system/user', |
| | | name: '用户管理', |
| | | component: UserView, |
| | | meta: { |
| | | keepAlive: true // 设置keepAlive,让此路由页面被缓存 |
| | | }, |
| | | }, |
| | | |
| | | // { |
| | | // path: '/system/menu', |
| | | // name: '菜单管理', |
| | | // component: () => import('@/views/system/menu/index.vue'), |
| | | // meta: { |
| | | // keepAlive: true // 设置keepAlive,让此路由页面被缓存 |
| | | // }, |
| | | // }, |
| | | // { |
| | | // path: '/system/userLogin', |
| | | // name: '登录日志', |
| | | // component: () => import('@/views/system/userLogin/index.vue'), |
| | | // meta: { |
| | | // keepAlive: true // 设置keepAlive,让此路由页面被缓存 |
| | | // }, |
| | | // }, |
| | | // { |
| | | // path: '/system/user', |
| | | // name: '用户管理', |
| | | // component: () => import('@/views/system/user/index.vue'), |
| | | // meta: { |
| | | // keepAlive: true // 设置keepAlive,让此路由页面被缓存 |
| | | // }, |
| | | // }, |
| | | // { |
| | | // path: '/system/host', |
| | | // name: '机构管理', |
| | | // component: () => import('@/views/system/host/index.vue'), |
| | | // meta: { |
| | | // keepAlive: true // 设置keepAlive,让此路由页面被缓存 |
| | | // }, |
| | | // }, |
| | | ] |
| | | }) |
| | | |
| | | export const initRouter = async () => { |
| | | const modules = import.meta.glob('/src/views/**/index.vue'); |
| | | const resp = await get('/api/auth/router', {}); |
| | | let result = resp.data; |
| | | let data = result.data; |
| | | console.log(result); |
| | | data.forEach((item) => { |
| | | const module = modules[`/src/views${item.route}/index.vue`]; |
| | | if (module) { |
| | | const itemRouter = { |
| | | path: item.route, |
| | | name: item.name, |
| | | component: module, |
| | | meta: { |
| | | keepAlive: true // 设置keepAlive,让此路由页面被缓存 |
| | | } |
| | | } |
| | | router.addRoute(itemRouter) |
| | | } |
| | | }) |
| | | } |
| | | |
| | | export default router |