diff --git a/kicc-ui/src/store/modules/permission.ts b/kicc-ui/src/store/modules/permission.ts index 67e88b32..1ad397ea 100644 --- a/kicc-ui/src/store/modules/permission.ts +++ b/kicc-ui/src/store/modules/permission.ts @@ -53,16 +53,16 @@ export const usePermissionStore = defineStore({ this.menuList = list; list?.length > 0 && this.setLastBuildMenuTime(); }, - setLastBuildMenuTime() { - this.lastBuildMenuTime = new Date().getTime(); + setLastBuildMenuTime(time?: number) { + this.lastBuildMenuTime = time || new Date().getTime(); }, setDynamicAddedRoute(added: boolean) { this.isDynamicAddedRoute = added; }, resetState(): void { - this.isDynamicAddedRoute = false; - this.menuList = []; - this.lastBuildMenuTime = 0; + this.setDynamicAddedRoute(false); + this.setMenuList([]); + this.setLastBuildMenuTime(0); }, async buildRoutesAction(): Promise { const { t } = useI18n(); diff --git a/kicc-ui/src/store/modules/user.ts b/kicc-ui/src/store/modules/user.ts index 2663701a..5cc22c32 100644 --- a/kicc-ui/src/store/modules/user.ts +++ b/kicc-ui/src/store/modules/user.ts @@ -81,20 +81,20 @@ export const useUserStore = defineStore({ this.refresh_token = refreshToken; setAuthCache(REFRESH_TOKEN_KEY, refreshToken); }, - setUserInfo(userInfo: User) { + setUserInfo(userInfo: Nullable) { this.userInfo = userInfo; setAuthCache(USER_INFO_KEY, userInfo); }, setSessionTimeout(flag: boolean) { this.sessionTimeout = flag; }, - resetState() { - this.userInfo = null; - this.sessionTimeout = false; - this.access_token = ''; - this.refresh_token = ''; - this.roleIds = []; - this.permissions = []; + resetState(): void { + this.setUserInfo(null); + this.setSessionTimeout(false); + this.setAccessToken(''); + this.setRefreshToken(''); + this.setRoleIds([]); + this.setPermissions([]); }, /** 登录 */ async login(params: LoginParams): Promise { @@ -149,9 +149,7 @@ export const useUserStore = defineStore({ } catch { console.log('注销Token失败'); } - this.setAccessToken(''); - this.setRefreshToken(''); - this.setSessionTimeout(false); + this.resetState(); goLogin && await router.push(PageEnum.BASE_LOGIN); }, /** 退出前确认 */ diff --git a/kicc-ui/src/utils/auth/index.ts b/kicc-ui/src/utils/auth/index.ts index 79f4ac0d..09ae01b2 100644 --- a/kicc-ui/src/utils/auth/index.ts +++ b/kicc-ui/src/utils/auth/index.ts @@ -27,6 +27,10 @@ export function setAuthCache(key: BasicKeys, value: any) { return fn(key, value, true); } +/** + * 清空授权缓存(清除当前项目所有缓存信息) + * 注意:这个请谨慎使用,会清空所有storage数据,不止会清除授权缓存,包括项目配置缓存,国际化缓存等等当前系统中所有缓存信息 + */ export function clearAuthCache(immediate = true) { const fn = isLocal ? Persistent.clearLocal : Persistent.clearSession; return fn(immediate); diff --git a/kicc-ui/src/utils/http/axios/Axios.ts b/kicc-ui/src/utils/http/axios/Axios.ts index 1f7a62fb..22f7f106 100644 --- a/kicc-ui/src/utils/http/axios/Axios.ts +++ b/kicc-ui/src/utils/http/axios/Axios.ts @@ -12,7 +12,7 @@ import axios from 'axios'; import qs from 'qs'; import { AxiosCanceler } from './axiosCancel'; import { isFunction } from '/@/utils/is'; -import { cloneDeep, omit } from 'lodash-es'; +import { cloneDeep } from 'lodash-es'; import { ContentTypeEnum } from '/@/enums/httpEnum'; import { RequestEnum } from '/@/enums/httpEnum';