无人机管理后台前端(已迁走)
张含笑
2025-09-01 2ca94de8ede18ac07ccfd8dec7b6f6a707adde9b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import { createRouter, createWebHashHistory, createWebHistory } from 'vue-router';
import PageRouter from './page/';
import ViewsRouter from './views/';
import AvueRouter from './avue-router';
import i18n from '@/lang';
import Store from '@/store/';
import getBaseConfig from '@/buildConfig/config';
const { routerHash } = getBaseConfig()
//创建路由
const Router = createRouter({
  base: import.meta.env.VITE_APP_BASE,
  history: routerHash ? createWebHashHistory(import.meta.env.VITE_APP_BASE) : createWebHistory(import.meta.env.VITE_APP_BASE),
  routes: [...PageRouter, ...ViewsRouter],
});
AvueRouter.install({
  store: Store,
  router: Router,
  i18n: i18n,
});
 
Router.$avueRouter.formatRoutes(Store.getters.menuAll, true);
 
export function resetRouter() {
  // 重置路由 比如用于身份验证失败,需要重新登录时 先清空当前的路有权限
  const newRouter = createRouter();
  Router.matcher = newRouter.matcher; // reset router
  AvueRouter.install(Vue, {
    router: Router,
    store: Store,
    i18n: i18n,
  });
}
 
export default Router;