From a8d359c25d20ba7816413785548983f7e6d16add Mon Sep 17 00:00:00 2001 From: wisonic-s Date: Fri, 1 Mar 2024 14:55:05 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E8=A7=86=E5=9B=BE):=20=E8=A1=A8=E6=A0=BC?= =?UTF-8?q?=E5=BC=80=E5=90=AF=E5=BA=8F=E5=8F=B7=E5=90=8E=E6=8B=96=E6=8B=BD?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E4=BF=9D=E5=AD=98=E5=BA=8F=E5=8F=B7=E7=9A=84?= =?UTF-8?q?=E5=88=97=E5=AE=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/models/chart/chart-attr.d.ts | 2 +- .../views/components/ChartComponentS2.vue | 19 ++++++++++++------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/core/core-frontend/src/models/chart/chart-attr.d.ts b/core/core-frontend/src/models/chart/chart-attr.d.ts index b7d6d93d23..d56be127b8 100644 --- a/core/core-frontend/src/models/chart/chart-attr.d.ts +++ b/core/core-frontend/src/models/chart/chart-attr.d.ts @@ -70,7 +70,7 @@ declare interface ChartBasicStyle { /** * 字段名称 */ - name: string + name?: string /** * 字段宽度占比 */ diff --git a/core/core-frontend/src/views/chart/components/views/components/ChartComponentS2.vue b/core/core-frontend/src/views/chart/components/views/components/ChartComponentS2.vue index 0c52a451d0..9049f3114c 100644 --- a/core/core-frontend/src/views/chart/components/views/components/ChartComponentS2.vue +++ b/core/core-frontend/src/views/chart/components/views/components/ChartComponentS2.vue @@ -302,15 +302,20 @@ const resizeAction = resizeColumn => { if (showPosition.value !== 'canvas') { return } - const fieldId = resizeColumn.info.meta.field + const fieldId: string = resizeColumn.info.meta.field const { basicStyle } = view.value.customAttr const containerWidth = document.getElementById(containerId).offsetWidth - basicStyle.tableFieldWidth?.forEach(item => { - if (item.fieldId === fieldId) { - item.width = parseFloat(((resizeColumn.info.resizedWidth / containerWidth) * 100).toFixed(2)) - } - }) - emitter.emit('set-table-column-width', basicStyle.tableFieldWidth) + const column = basicStyle.tableFieldWidth?.find(i => i.fieldId === fieldId) + let tableWidth: ChartBasicStyle['tableFieldWidth'] + const width = parseFloat(((resizeColumn.info.resizedWidth / containerWidth) * 100).toFixed(2)) + if (column) { + column.width = width + tableWidth = [...basicStyle.tableFieldWidth] + } else { + const tmp = { fieldId, width } + tableWidth = basicStyle.tableFieldWidth?.length ? [...basicStyle.tableFieldWidth, tmp] : [tmp] + } + emitter.emit('set-table-column-width', tableWidth) } defineExpose({ calcData,