From f8aa55ddfbbbc428d7328c725afdbbdd6929165c Mon Sep 17 00:00:00 2001 From: wisonic-s Date: Thu, 23 May 2024 14:58:33 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E8=A7=86=E5=9B=BE):=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E5=88=97=E5=AE=BD=E6=97=B6=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E8=A1=A8=E5=92=8C=E6=B1=87=E6=80=BB=E8=A1=A8=E4=B8=8B?= =?UTF-8?q?=E9=92=BB=E5=BC=82=E5=B8=B8=20#9727?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/chart/chart/common/common_table.js | 10 ++++++++++ .../frontend/src/views/chart/chart/table/table-info.js | 1 + 2 files changed, 11 insertions(+) diff --git a/core/frontend/src/views/chart/chart/common/common_table.js b/core/frontend/src/views/chart/chart/common/common_table.js index 140ccd99d0..88f4c03cb0 100644 --- a/core/frontend/src/views/chart/chart/common/common_table.js +++ b/core/frontend/src/views/chart/chart/common/common_table.js @@ -261,6 +261,16 @@ export function getSize(chart) { p[n.fieldId] = n return p }, {}) || {} + // 下钻字段使用入口字段的宽度 + if (chart.drill) { + const xAxis = JSON.parse(chart.xaxis) + const curDrillField = chart.drillFields[chart.drillFilters.length] + const drillEnterFieldIndex = xAxis.findIndex(item => item.id === chart.drillFilters[0].fieldId) + const drillEnterField = xAxis[drillEnterFieldIndex] + fieldMap[curDrillField.dataeaseName] = { + width: fieldMap[drillEnterField.dataeaseName]?.width + } + } size.colCfg.width = node => { const width = node.spreadsheet.container.cfg.el.offsetWidth if (!s.tableFieldWidth?.length) { diff --git a/core/frontend/src/views/chart/chart/table/table-info.js b/core/frontend/src/views/chart/chart/table/table-info.js index d76ccb5e6e..cde9942538 100644 --- a/core/frontend/src/views/chart/chart/table/table-info.js +++ b/core/frontend/src/views/chart/chart/table/table-info.js @@ -116,6 +116,7 @@ export function baseTableInfo(container, chart, action, tableData, pageInfo, vue // 移除所有下钻字段,调整当前下钻字段到下钻入口位置 fields = fields.filter(item => !drillFilters.includes(item.id)) fields.splice(drillEnterFieldIndex, 0, curDrillField) + nameMap[curDrillField.dataeaseName] = curDrillField } fields.forEach(ele => { const f = nameMap[ele.dataeaseName]