mirror of
https://github.com/jeecgboot/JeecgBoot.git
synced 2026-01-03 20:35:29 +08:00
v3.7.2 版本代码合并
This commit is contained in:
40
jeecgboot-vue3/src/router/router.ts
Normal file
40
jeecgboot-vue3/src/router/router.ts
Normal file
@ -0,0 +1,40 @@
|
||||
/*
|
||||
* 路由实例存储文件,请勿轻易添加其他代码,防止出现 HMR 或其他问题
|
||||
*/
|
||||
import type {Router, RouterHistory} from 'vue-router';
|
||||
import {createRouter as createVueRouter, createWebHistory, RouterOptions} from 'vue-router';
|
||||
|
||||
export let router: Router = null as unknown as Router;
|
||||
|
||||
export function setRouter(r: Router) {
|
||||
router = r
|
||||
}
|
||||
|
||||
let webHistory: Nullable<RouterHistory> = null;
|
||||
|
||||
/**
|
||||
* 创建路由
|
||||
* @param options 参数
|
||||
*/
|
||||
export function createRouter(options: Partial<RouterOptions>) {
|
||||
webHistory = createWebHistory(import.meta.env.VITE_PUBLIC_PATH);
|
||||
// app router
|
||||
let router = createVueRouter({
|
||||
history: webHistory,
|
||||
routes: [],
|
||||
...options,
|
||||
});
|
||||
|
||||
setRouter(router)
|
||||
|
||||
return router
|
||||
}
|
||||
|
||||
// 销毁路由
|
||||
export function destroyRouter() {
|
||||
setRouter(null as unknown as Router);
|
||||
if (webHistory) {
|
||||
webHistory.destroy();
|
||||
}
|
||||
webHistory = null
|
||||
}
|
||||
Reference in New Issue
Block a user