diff --git a/src/utils/http/axios/index.ts b/src/utils/http/axios/index.ts index 9a53489..8e572da 100644 --- a/src/utils/http/axios/index.ts +++ b/src/utils/http/axios/index.ts @@ -80,6 +80,19 @@ const transform: AxiosTransform = { switch (code) { case ResultEnum.UNAUTHRAZATION: timeoutMsg = t('登录超时,请重新登录!'); + + if (data) { + let split = data.split('||'); + if (split.length > 1) { + let logoutMessage = split[1]; + // 跨页面配置 异常显示提醒 + sessionStorage.setItem('logoutInfoData', JSON.stringify({ + logoutType: split[0], + logoutMessage: logoutMessage, + })); + } + } + const userStore = useUserStoreWithOut(); userStore.setToken(undefined); if (!window.location.hash.includes('login')&&!window.location.pathname.includes('login') diff --git a/src/views/sys/login/Login.vue b/src/views/sys/login/Login.vue index 7c01d9c..42d7f38 100644 --- a/src/views/sys/login/Login.vue +++ b/src/views/sys/login/Login.vue @@ -42,9 +42,20 @@ import logopng from '/@/assets/images/logo-dark.png'; import logobg from '/@/assets/images/login-left.gif'; import { getLogoInfo } from '/@/api/system/login'; - import { ref } from 'vue'; + import { ref, onMounted } from 'vue'; import { LogoConfig } from '/#/config'; + import { useMessage } from '/@/hooks/web/useMessage'; + const { createErrorModal } = useMessage(); + + onMounted(() => { + let logoutInfoData = JSON.parse(sessionStorage.getItem('logoutInfoData') as string); + if (logoutInfoData) { + createErrorModal({ title: t('错误提示'), content: logoutInfoData.logoutMessage }); + sessionStorage.removeItem('logoutInfoData'); + } + }) + const appStore = useAppStore(); defineProps({ sessionTimeout: {