/** * 路由入口 * @author LiQingSong */ import { createRouter, createWebHashHistory } from 'vue-router'; import { RoutesDataItem } from "@/utils/routes"; // import AvueRouter from './avue-router'; //封装的路由控制方法 import store from '@/config/store' import PageRouter from './page/' // 页面路由 import ViewsRouter from './views/' // 页面路由 const routes: Array = [ ...PageRouter,...ViewsRouter, ] const router = createRouter({ scrollBehavior(/* to, from, savedPosition */) { return { top: 0 } }, history: createWebHashHistory(process.env.BASE_URL), routes: routes as any, }); //添加到路由 // 初始化和注册 AvueRouter // AvueRouter.install({ // router: router, // store: store, // keepAlive: false, // }); // eslint-disable-next-line // (router as any).$avueRouter.formatRoutes((store as any).state.user.menuAll, true); // 动态路由核心方法 export function resetRouter () { // 重置路由 比如用于身份验证失败,需要重新登录时 先清空当前的路有权限 const newRouter = createRouter({ scrollBehavior(/* to, from, savedPosition */) { return { top: 0 } }, history: createWebHashHistory(process.env.BASE_URL), routes: routes as any, }) router.resolve = newRouter.resolve // reset router // AvueRouter.install({ // router: router, // store: store, // keepAlive: false, // }); } export default router;