mirror of
https://github.com/vbenjs/vue-vben-admin.git
synced 2025-08-27 14:47:28 +08:00
refactor: refactor the project to solve the hot update problem caused by circular dependencies close #301
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import { Router } from 'vue-router';
|
||||
import router from '/@/router';
|
||||
|
||||
import { createProgressGuard } from './progressGuard';
|
||||
import { createPermissionGuard } from './permissionGuard';
|
||||
@@ -10,14 +10,12 @@ import { createHttpGuard } from './httpGuard';
|
||||
import { createPageGuard } from './pageGuard';
|
||||
import { createStateGuard } from './stateGuard';
|
||||
|
||||
export function createGuard(router: Router) {
|
||||
createPageGuard(router);
|
||||
createPageLoadingGuard(router);
|
||||
createHttpGuard(router);
|
||||
createScrollGuard(router);
|
||||
createMessageGuard(router);
|
||||
createTitleGuard(router);
|
||||
createProgressGuard(router);
|
||||
createPermissionGuard(router);
|
||||
createStateGuard(router);
|
||||
}
|
||||
createPageGuard(router);
|
||||
createPageLoadingGuard(router);
|
||||
createHttpGuard(router);
|
||||
createScrollGuard(router);
|
||||
createMessageGuard(router);
|
||||
createTitleGuard(router);
|
||||
createProgressGuard(router);
|
||||
createPermissionGuard(router);
|
||||
createStateGuard(router);
|
||||
|
@@ -1,5 +1,8 @@
|
||||
import type { Router } from 'vue-router';
|
||||
import { appStore } from '/@/store/modules/app';
|
||||
import { tabStore } from '/@/store/modules/tab';
|
||||
import { userStore } from '/@/store/modules/user';
|
||||
import { permissionStore } from '/@/store/modules/permission';
|
||||
import { PageEnum } from '/@/enums/pageEnum';
|
||||
import { removeTabChangeListener } from '/@/logics/mitt/tabChange';
|
||||
|
||||
@@ -8,6 +11,9 @@ export function createStateGuard(router: Router) {
|
||||
// Just enter the login page and clear the authentication information
|
||||
if (to.path === PageEnum.BASE_LOGIN) {
|
||||
appStore.resumeAllState();
|
||||
permissionStore.commitResetState();
|
||||
tabStore.commitResetState();
|
||||
userStore.commitResetState();
|
||||
removeTabChangeListener();
|
||||
}
|
||||
});
|
||||
|
@@ -3,7 +3,6 @@ import type { App } from 'vue';
|
||||
|
||||
import { createRouter, createWebHashHistory } from 'vue-router';
|
||||
|
||||
import { createGuard } from './guard';
|
||||
import { basicRoutes, LoginRoute } from './routes';
|
||||
import { REDIRECT_NAME } from './constant';
|
||||
|
||||
@@ -30,7 +29,6 @@ export function resetRouter() {
|
||||
// config router
|
||||
export function setupRouter(app: App<Element>) {
|
||||
app.use(router);
|
||||
createGuard(router);
|
||||
}
|
||||
|
||||
export default router;
|
||||
|
Reference in New Issue
Block a user