From 297d8f3be2c9770c4200d9543405b88f1b782503 Mon Sep 17 00:00:00 2001 From: wangjiahao <1522128093@qq.com> Date: Fri, 13 Sep 2024 12:15:55 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=95=B0=E6=8D=AE=E5=A4=A7=E5=B1=8F):=20?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BD=BF=E7=94=A8=E4=BD=8D=E7=BD=AE=E7=BC=96?= =?UTF-8?q?=E8=BE=91=E6=8C=89=E9=92=AE=E7=A7=BB=E5=8A=A8=E4=BD=8D=E7=BD=AE?= =?UTF-8?q?=E6=97=B6,=E4=BF=9D=E5=AD=98=E5=90=8E=E7=9A=84=E5=88=86?= =?UTF-8?q?=E7=BB=84=E5=92=8CTab=E7=BB=84=E4=BB=B6=E4=BD=8D=E7=BD=AE?= =?UTF-8?q?=E5=8F=AF=E8=83=BD=E8=A2=AB=E8=BF=98=E5=8E=9F=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../visualization/common/ComponentPosition.vue | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/core/core-frontend/src/components/visualization/common/ComponentPosition.vue b/core/core-frontend/src/components/visualization/common/ComponentPosition.vue index 48b3a4368c..1e0991e6eb 100644 --- a/core/core-frontend/src/components/visualization/common/ComponentPosition.vue +++ b/core/core-frontend/src/components/visualization/common/ComponentPosition.vue @@ -93,7 +93,10 @@ import { storeToRefs } from 'pinia' import { dvMainStoreWithOut } from '@/store/modules/data-visualization/dvMain' import _ from 'lodash' import { snapshotStoreWithOut } from '@/store/modules/data-visualization/snapshot' -import { groupSizeStyleAdaptor } from '@/utils/style' +import { groupSizeStyleAdaptor, groupStyleRevert } from '@/utils/style' +import { isGroupCanvas, isTabCanvas } from '@/utils/canvasUtils' +const parentNode = ref(null) +const canvasId = ref('canvas-main') const snapshotStore = snapshotStoreWithOut() const dvMainStore = dvMainStoreWithOut() @@ -158,6 +161,14 @@ const onPositionChange = key => { curComponent.value.style[key] = (positionMounted.value[key] * canvasStyleData.value.scale) / 100 } + //如果当前画布是Group内部画布 则对应组件定位在resize时要还原到groupStyle中 + if (isGroupCanvas(canvasId.value) || isTabCanvas(canvasId.value)) { + groupStyleRevert(curComponent.value, { + width: parentNode.value.offsetWidth, + height: parentNode.value.offsetHeight + }) + } + if (['Group', 'DeTabs'].includes(curComponent.value.component)) { //如果当前组件是Group分组或者Tab 则要进行内部组件深度计算 groupSizeStyleAdaptor(curComponent.value) @@ -176,6 +187,8 @@ const multiDimensionalChange = () => { const positionInit = () => { if (curComponent.value) { + canvasId.value = curComponent.value.canvasId + parentNode.value = document.querySelector('#editor-' + canvasId.value) Object.keys(positionMounted.value).forEach(key => { positionMounted.value[key] = Math.round( (curComponent.value.style[key] * 100) / canvasStyleData.value.scale