diff --git a/orion-visor-ui/src/api/interceptor.ts b/orion-visor-ui/src/api/interceptor.ts index d86dd36c..a6c7028c 100644 --- a/orion-visor-ui/src/api/interceptor.ts +++ b/orion-visor-ui/src/api/interceptor.ts @@ -69,8 +69,10 @@ axios.interceptors.response.use( if (!responseUrl || !responseUrl.includes('/logout')) { await useUserStore().logout(); } - // 重新加载自动跳转登录页面 - window.location.reload(); + // 非登录页面就重新加载, 会自动跳转登录页面 + if (!window.location.pathname.includes('/login')) { + window.location.reload(); + } }); } else { // 其他异常 判断是否弹出错误信息 diff --git a/orion-visor-ui/src/components/app/navbar/index.vue b/orion-visor-ui/src/components/app/navbar/index.vue index db6715d9..4cd73f87 100644 --- a/orion-visor-ui/src/components/app/navbar/index.vue +++ b/orion-visor-ui/src/components/app/navbar/index.vue @@ -325,6 +325,8 @@ } }; + defineExpose({ setMessageBoxVisible }); + onMounted(() => { // 查询未读消息 pullHasUnreadMessage(); diff --git a/orion-visor-ui/src/components/system/message-box/index.vue b/orion-visor-ui/src/components/system/message-box/index.vue index eea336a5..8fbed43d 100644 --- a/orion-visor-ui/src/components/system/message-box/index.vue +++ b/orion-visor-ui/src/components/system/message-box/index.vue @@ -30,6 +30,7 @@ 清空 diff --git a/orion-visor-ui/src/layout/default-layout.vue b/orion-visor-ui/src/layout/default-layout.vue index 11f959b3..f8a35b83 100644 --- a/orion-visor-ui/src/layout/default-layout.vue +++ b/orion-visor-ui/src/layout/default-layout.vue @@ -2,7 +2,7 @@
- +
@@ -58,7 +58,7 @@ import { useRoute, useRouter } from 'vue-router'; import { useAppStore, useUserStore } from '@/store'; import useResponsive from '@/hooks/responsive'; - import { toggleDrawerMenuKey } from '@/types/symbol'; + import { openMessageBox, toggleDrawerMenuKey } from '@/types/symbol'; import PageLayout from './page-layout.vue'; import NavBar from '@/components/app/navbar/index.vue'; import TabBar from '@/components/app/tab-bar/index.vue'; @@ -71,7 +71,8 @@ const route = useRoute(); useResponsive(true); - const isInit = ref(false); + const render = ref(false); + const navRef = ref(); const navbarHeight = `60px`; const navbar = computed(() => appStore.navbar); const renderMenu = computed(() => appStore.menu && !appStore.topMenu); @@ -95,7 +96,7 @@ // 设置菜单展开状态 const setCollapsed = (val: boolean) => { - if (!isInit.value) return; + if (!render.value) return; appStore.updateSettings({ menuCollapse: val }); }; @@ -109,8 +110,13 @@ drawerVisible.value = !drawerVisible.value; }); + // 对外暴露打开消息盒子 + provide(openMessageBox, () => { + navRef.value.setMessageBoxVisible(); + }); + onMounted(() => { - isInit.value = true; + render.value = true; }); diff --git a/orion-visor-ui/src/types/symbol.ts b/orion-visor-ui/src/types/symbol.ts index db61d91d..be67c90d 100644 --- a/orion-visor-ui/src/types/symbol.ts +++ b/orion-visor-ui/src/types/symbol.ts @@ -1,6 +1,9 @@ // 切换菜单状态 export const toggleDrawerMenuKey = Symbol(); +// 打开消息盒子 +export const openMessageBox = Symbol(); + // 打开偏好设置 export const openAppSettingKey = Symbol(); diff --git a/orion-visor-ui/src/views/asset-audit/connect-log/components/connect-log-table.vue b/orion-visor-ui/src/views/asset-audit/connect-log/components/connect-log-table.vue index 72747063..ee7000c4 100644 --- a/orion-visor-ui/src/views/asset-audit/connect-log/components/connect-log-table.vue +++ b/orion-visor-ui/src/views/asset-audit/connect-log/components/connect-log-table.vue @@ -155,11 +155,12 @@