From d704bc618fa9ecb5a9f8c077eaa0b49031db384c Mon Sep 17 00:00:00 2001 From: wangjiahao <1522128093@qq.com> Date: Tue, 27 Aug 2024 18:06:25 +0800 Subject: [PATCH] =?UTF-8?q?refactor(=E6=95=B0=E6=8D=AE=E5=A4=A7=E5=B1=8F):?= =?UTF-8?q?=20=E5=88=86=E7=BB=84=E5=92=8CTab=E7=BB=84=E4=BB=B6=E7=A6=81?= =?UTF-8?q?=E7=94=A8=E7=9B=B8=E4=BA=92=E7=BB=84=E5=90=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../data-visualization/RealTimeListTree.vue | 4 ++-- .../data-visualization/canvas/Shape.vue | 4 ++-- .../modules/data-visualization/compose.ts | 18 +++++++++++------- 3 files changed, 15 insertions(+), 11 deletions(-) diff --git a/core/core-frontend/src/components/data-visualization/RealTimeListTree.vue b/core/core-frontend/src/components/data-visualization/RealTimeListTree.vue index 76dd03d7c1..652cd0acb4 100644 --- a/core/core-frontend/src/components/data-visualization/RealTimeListTree.vue +++ b/core/core-frontend/src/components/data-visualization/RealTimeListTree.vue @@ -39,7 +39,7 @@ const areaDataPush = component => { component.isShow && component.canvasId === 'canvas-main' && component.category !== 'hidden' && - !['Group', 'GroupArea'].includes(component.component) + !['Group', 'GroupArea', 'DeTabs'].includes(component.component) ) { areaData.value.components.push(component) } @@ -75,7 +75,7 @@ const shiftDataPush = curClickIndex => { !component.isLock && component.isShow && component.category !== 'hidden' && - !['Group', 'GroupArea'].includes(component.component) + !['Group', 'GroupArea', 'DeTabs'].includes(component.component) ) areaData.value.components.push(...shiftAreaComponents) dvMainStore.setCurComponent({ component: null, index: null }) diff --git a/core/core-frontend/src/components/data-visualization/canvas/Shape.vue b/core/core-frontend/src/components/data-visualization/canvas/Shape.vue index 436510023e..1c506234a6 100644 --- a/core/core-frontend/src/components/data-visualization/canvas/Shape.vue +++ b/core/core-frontend/src/components/data-visualization/canvas/Shape.vue @@ -160,7 +160,7 @@ const state = reactive({ id: '' }, // 禁止移入Tab中的组件 - ignoreTabMoveComponent: ['de-button', 'de-reset-button', 'DeTabs'], + ignoreTabMoveComponent: ['de-button', 'de-reset-button', 'DeTabs', 'Group'], // 当画布在tab中是 宽度左右拓展的余量 parentWidthTabOffset: 40, canvasChangeTips: 'none', @@ -431,7 +431,7 @@ const areaDataPush = component => { !component.isLock && component.isShow && component.canvasId === 'canvas-main' && - !['Group', 'GroupArea'].includes(component.component) + !['Group', 'GroupArea', 'DeTabs'].includes(component.component) ) { areaData.value.components.push(component) } diff --git a/core/core-frontend/src/store/modules/data-visualization/compose.ts b/core/core-frontend/src/store/modules/data-visualization/compose.ts index e631efcc30..9aa7a298ad 100644 --- a/core/core-frontend/src/store/modules/data-visualization/compose.ts +++ b/core/core-frontend/src/store/modules/data-visualization/compose.ts @@ -142,9 +142,7 @@ export const composeStore = defineStore('compose', { const components = [] areaData.components.forEach(component => { - if (!['Group', 'GroupArea'].includes(component.component)) { - components.push(component) - } else { + if (['Group'].includes(component.component)) { // 如果要组合的组件中,已经存在组合数据,则需要提前拆分 const parentStyle = { ...component.style } const subComponents = component.propValue @@ -155,6 +153,10 @@ export const composeStore = defineStore('compose', { }) components.push(...component.propValue) + } else if (['DeTabs', 'GroupArea'].includes(component.component)) { + // do nothing GroupAreas组合视阔区 DeTabs 均不加入分组中 + } else { + components.push(component) } }) @@ -202,10 +204,12 @@ export const composeStore = defineStore('compose', { // 将已经放到 Group 组件数据删除,也就是在 componentData 中删除,因为它们已经从 componentData 挪到 Group 组件中了 batchDeleteComponent(deleteData) { deleteData.forEach(component => { - for (let i = 0, len = componentData.value.length; i < len; i++) { - if (component.id == componentData.value[i].id) { - componentData.value.splice(i, 1) - break + if (!['DeTabs', 'GroupArea'].includes(component.component)) { + for (let i = 0, len = componentData.value.length; i < len; i++) { + if (component.id == componentData.value[i].id) { + componentData.value.splice(i, 1) + break + } } } })