import { removeTabChangeListener } from '@eciol/shared'; import type { Router } from 'vue-router'; import { context } from '../context'; export function createStateGuard(router: Router) { router.afterEach((to) => { // Just enter the login page and clear the authentication information if (to.path === context.PageEnum.BASE_LOGIN) { const tabStore = context.useMultipleTabStore(); const userStore = context.useUserStoreWithOut(); const appStore = context.useAppStoreWithOut(); const permissionStore = context.usePermissionStoreWithOut(); appStore.resetAllState(); permissionStore.resetState(); tabStore.resetState(); userStore.resetState(); removeTabChangeListener(); } }); }