21 lines
761 B
TypeScript
21 lines
761 B
TypeScript
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/routeChange';
|
|
|
|
export function createStateGuard(router: Router) {
|
|
router.afterEach((to) => {
|
|
// 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();
|
|
}
|
|
});
|
|
}
|