From 9f6ded361c5882c84e0469c5bd78082304bc7679 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=8D=9A=E6=96=87?= <1179111926@qq.com> Date: Thu, 7 Aug 2025 10:05:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=A1=B5=E9=9D=A2=E8=B7=B3?= =?UTF-8?q?=E8=BD=AC=E5=9C=B0=E5=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vgpu/views/monitor/overview/getOptions.js | 5 ++++- .../web/projects/vgpu/views/task/admin/top.vue | 16 +++++----------- packages/web/src/components/TextPlus.vue | 4 +++- .../web/src/layout/components/Sidebar/index.vue | 5 ++++- packages/web/src/layout/index.vue | 5 ----- 5 files changed, 16 insertions(+), 19 deletions(-) diff --git a/packages/web/projects/vgpu/views/monitor/overview/getOptions.js b/packages/web/projects/vgpu/views/monitor/overview/getOptions.js index 54e6472..99289ac 100644 --- a/packages/web/projects/vgpu/views/monitor/overview/getOptions.js +++ b/packages/web/projects/vgpu/views/monitor/overview/getOptions.js @@ -2,6 +2,9 @@ import { timeParse } from '@/utils'; import { cloneDeep } from 'lodash'; import nodeApi from '~/vgpu/api/node'; import { ElMessage } from 'element-plus'; +import useParentAction from '~/vgpu/hooks/useParentAction'; + +const { sendRouteChange } = useParentAction(); export const getResourceStatus = (statusConfig) => { return { @@ -278,7 +281,7 @@ export const handleChartClick = async (params, router) => { if (node) { const uuid = node.uid; - router.push(`/admin/vgpu/node/admin/${uuid}?nodeName=${name}`); + sendRouteChange(`/admin/vgpu/node/admin/${uuid}?nodeName=${name}`); } else { ElMessage.error('节点未找到'); } diff --git a/packages/web/projects/vgpu/views/task/admin/top.vue b/packages/web/projects/vgpu/views/task/admin/top.vue index e27ec5b..4393d9e 100644 --- a/packages/web/projects/vgpu/views/task/admin/top.vue +++ b/packages/web/projects/vgpu/views/task/admin/top.vue @@ -9,7 +9,9 @@ import TabTop from '~/vgpu/components/TabTop.vue'; import { useRouter } from 'vue-router'; import nodeApi from '~/vgpu/api/node'; import { ElMessage } from 'element-plus'; +import useParentAction from '~/vgpu/hooks/useParentAction'; +const { sendRouteChange } = useParentAction(); const router = useRouter(); const handleChartClick = async (params) => { @@ -20,23 +22,15 @@ const handleChartClick = async (params) => { const node = list.find(node => node.name === name); if (node) { const uuid = node.uid; - router.push(`/admin/vgpu/node/admin/${uuid}?nodeName=${name}`); + sendRouteChange(`/admin/vgpu/node/admin/${uuid}?nodeName=${name}`); } else { ElMessage.error('节点未找到'); } } else if (activeTabKey === 'deviceuuid') { - router.push({ - path: `/admin/vgpu/card/admin/${name}`, - }); + sendRouteChange(`/admin/vgpu/card/admin/${name}`); } else { const [containerName, podUid] = name.split(':'); - router.push({ - path: '/admin/vgpu/task/admin/detail', - query: { - name: containerName, - podUid: podUid, - }, - }); + sendRouteChange(`/admin/vgpu/task/admin/detail?name=${containerName}&podUid=${podUid}`); } }; diff --git a/packages/web/src/components/TextPlus.vue b/packages/web/src/components/TextPlus.vue index 3dcf78e..95d69ec 100644 --- a/packages/web/src/components/TextPlus.vue +++ b/packages/web/src/components/TextPlus.vue @@ -10,7 +10,9 @@ diff --git a/packages/web/src/layout/components/Sidebar/index.vue b/packages/web/src/layout/components/Sidebar/index.vue index f8204a4..f18ed4b 100644 --- a/packages/web/src/layout/components/Sidebar/index.vue +++ b/packages/web/src/layout/components/Sidebar/index.vue @@ -41,7 +41,7 @@ 'side-menus-item-children-item', { 'is-active': route.path.includes(child.path) }, ]" - @click="router.push(child.path)" + @click="sendRouteChange(child.path)" > {{ child.meta?.title }} @@ -62,6 +62,9 @@ import { computed, onMounted, ref, nextTick, onBeforeUnmount } from 'vue'; import { useRoute, useRouter } from 'vue-router'; import { useStore } from 'vuex'; +import useParentAction from '~/vgpu/hooks/useParentAction'; + +const { sendRouteChange } = useParentAction(); const route = useRoute(); const router = useRouter(); diff --git a/packages/web/src/layout/index.vue b/packages/web/src/layout/index.vue index 99eeec9..028cbeb 100644 --- a/packages/web/src/layout/index.vue +++ b/packages/web/src/layout/index.vue @@ -50,11 +50,6 @@ export default { const messageData = JSON.parse(event.data); if (messageData.type === "ChangeTheRoute") { // const { pathname, query } = parseUrl(messageData.data) - // console.log(messageData.data, 'messageData.data') - // this.router.push({ - // path: pathname, - // query - // }); this.router.replace(messageData.data) } } catch (e) { }