fix(图表):修复透视表树形模式下点击行头后无法复制

This commit is contained in:
wisonic-s
2026-03-10 22:28:39 +08:00
committed by wisonic-s
parent 7532cac10d
commit 65d151d6ab

View File

@@ -1452,12 +1452,23 @@ export function copyContent(s2Instance: SpreadSheet, event, fieldMeta) {
const curCell = cells[0]
if (cell.getMeta().id === curCell.id) {
const cellMeta = cell.getMeta()
const value = cellMeta.data?.[cellMeta.valueField]
const metaObj = find(fieldMeta, m => m.field === cellMeta.valueField)
const valueField = cellMeta.valueField
const value = cellMeta.data?.[valueField]
const metaObj = find(fieldMeta, m => m.field === valueField)
let fieldVal = value?.toString()
if (metaObj) {
fieldVal = metaObj.formatter(value)
}
if (fieldVal === undefined || fieldVal === null) {
const fieldMap = fieldMeta?.reduce((p, n) => {
p[n.field] = n.name
return p
}, {})
fieldVal = cellMeta.value
if (fieldMap?.[fieldVal]) {
fieldVal = fieldMap[fieldVal]
}
}
copyString(fieldVal, true)
}
s2Instance.interaction.clearState()
@@ -1497,12 +1508,23 @@ export function copyContent(s2Instance: SpreadSheet, event, fieldMeta) {
const arr = matrix[k] as TableDataCell[]
arr.forEach((cell, index) => {
const cellMeta = cell.getMeta()
const value = cellMeta.data?.[cellMeta.valueField]
const metaObj = find(fieldMeta, m => m.field === cellMeta.valueField)
const valueField = cellMeta.valueField
const value = cellMeta.data?.[valueField]
const metaObj = find(fieldMeta, m => m.field === valueField)
let fieldVal = value?.toString()
if (metaObj) {
fieldVal = metaObj.formatter(value)
}
if (fieldVal === undefined || fieldVal === null) {
const fieldMap = fieldMeta?.reduce((p, n) => {
p[n.field] = n.name
return p
}, {})
fieldVal = cellMeta.value
if (fieldMap?.[fieldVal]) {
fieldVal = fieldMap[fieldVal]
}
}
if (fieldVal === undefined || fieldVal === null) {
fieldVal = ''
}