From a33fca18931d301f07db05e7a8e6d5aa3a6b485e Mon Sep 17 00:00:00 2001 From: Qiuxia Fan Date: Fri, 4 Mar 2022 13:08:46 +0800 Subject: [PATCH] fix: update tab --- src/store/modules/dashboard.ts | 2 +- src/views/dashboard/controls/Tab.vue | 6 +++++- src/views/dashboard/controls/Widget.vue | 3 ++- src/views/dashboard/related/profile/Content.vue | 6 +++--- 4 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/store/modules/dashboard.ts b/src/store/modules/dashboard.ts index 29b14408..ad15f257 100644 --- a/src/store/modules/dashboard.ts +++ b/src/store/modules/dashboard.ts @@ -190,7 +190,7 @@ export const dashboardStore = defineStore({ (d: LayoutConfig) => actived[0] === d.i ); - if (this.selectedGrid.i === item.i) { + if (this.selectedGrid && this.selectedGrid.i === item.i) { this.selectedGrid = null; } if (actived.length === 3) { diff --git a/src/views/dashboard/controls/Tab.vue b/src/views/dashboard/controls/Tab.vue index 1d570e72..f74314da 100644 --- a/src/views/dashboard/controls/Tab.vue +++ b/src/views/dashboard/controls/Tab.vue @@ -50,7 +50,7 @@ limitations under the License. -->
:is="item.type" :data="item" :activeIndex="`${data.i}-${activeTabIndex}-${item.i}`" + :needQuery="needQuery" /> @@ -106,6 +107,7 @@ export default defineComponent({ const activeTabIndex = ref(0); const activeTabWidget = ref(""); const editTabIndex = ref(NaN); // edit tab item name + const needQuery = ref(false); const l = dashboardStore.layout.findIndex( (d: LayoutConfig) => d.i === props.data.i ); @@ -125,6 +127,7 @@ export default defineComponent({ dashboardStore.setCurrentTabItems( dashboardStore.layout[l].children[activeTabIndex.value].children ); + needQuery.value = true; } function removeTab(e: Event) { e.stopPropagation(); @@ -191,6 +194,7 @@ export default defineComponent({ dashboardStore, activeTabIndex, editTabIndex, + needQuery, }; }, }); diff --git a/src/views/dashboard/controls/Widget.vue b/src/views/dashboard/controls/Widget.vue index 1e92a7fe..56de4729 100644 --- a/src/views/dashboard/controls/Widget.vue +++ b/src/views/dashboard/controls/Widget.vue @@ -77,6 +77,7 @@ const props = { default: () => ({ widget: {} }), }, activeIndex: { type: String, default: "" }, + needQuery: { type: Boolean, default: false }, }; export default defineComponent({ name: "Widget", @@ -93,7 +94,7 @@ export default defineComponent({ const dashboardStore = useDashboardStore(); const selectorStore = useSelectorStore(); - if (dashboardStore.entity === EntityType[1].value) { + if (dashboardStore.entity === EntityType[1].value || props.needQuery) { queryMetrics(); } diff --git a/src/views/dashboard/related/profile/Content.vue b/src/views/dashboard/related/profile/Content.vue index 47e2210c..18bd2658 100644 --- a/src/views/dashboard/related/profile/Content.vue +++ b/src/views/dashboard/related/profile/Content.vue @@ -65,8 +65,8 @@ function loadTrees(l: boolean) { } .thread-stack { - padding: 5px 12px; - height: calc(50% - 50px); + padding: 5px; + height: calc(50% - 20px); overflow: auto; width: 100%; } @@ -75,6 +75,6 @@ function loadTrees(l: boolean) { text-align: center; width: 100%; overflow: hidden; - height: calc(50% - 50px); + height: calc(50% - 20px); }