🐛使用copyWithHeader无法复制表头数据到excel中
Calmio-Y opened this issue · comments
🏷 Version
Package | Version |
---|---|
@antv/s2 | 1.54.6 |
@antv/s2-react | 1.46.3 |
@antv/s2-vue |
Sheet Type
- PivotSheet
- TableSheet
- GridAnalysisSheet
- StrategySheet
- EditableSheet
🖋 Description
使用copyWithHeader无法复制表头数据到excel中
⌨️ Code Snapshots
import React from 'react';
import ReactDOM from 'react-dom';
import { SheetComponent } from '@antv/s2-react';
fetch('https://gw.alipayobjects.com/os/bmw-prod/2a5dbbc8-d0a7-4d02-b7c9-34f6ca63cff6.json')
.then((res) => res.json())
.then((dataCfg) => {
const s2Options = {
width: 600,
height: 480,
interaction: {
// 可复制
enableCopy: true,
copyWithHeader: true,
copyWithFormat: true,
brushSelection: {
data: true,
row: true,
col: true,
},
multiSelection: true,
},
};
const dd = {
fields: {
rows: ['year-period'],
columns: ['entity'],
values: ['dq'],
valueInCols: true,
},
meta: [
{
field: 'year',
},
{
field: 'dq',
},
{
field: 'bq',
},
{
field: 'tq',
},
{
field: 'mlv',
},
{
field: 'tb',
},
{
field: 'period',
name: '月份',
},
{
field: 'entity',
},
{
field: 'year-period'
},
],
data: [
{
period: '三月',
year: '2018年',
entity: '两片罐事业部',
'year-period': '2018年-三月',
bq: 32223,
dq: 53332,
_origin: {
period: '3',
year: '2018',
entity: 'Can_BU',
'year-period': '2018-3',
},
},
{
period: '三月',
year: '2019年',
entity: '两片罐事业部',
'year-period': '2019年-三月',
bq: 32223,
dq: 53332,
_origin: {
period: '3',
year: '2019',
entity: 'Can_BU',
'year-period': '2019-3',
},
},
{
period: '三月',
year: '2023年',
entity: '两片罐事业部',
'year-period': '2023年-三月',
bq: 61745.2,
dq: 53332,
_origin: {
period: '3',
year: '2023',
entity: 'Can_BU',
'year-period': '2023-3',
},
},
{
period: '三月',
year: '2023年',
entity: '宝翼制罐',
'year-period': '2023年-三月',
bq: 36544,
dq: 67456,
_origin: {
period: '3',
year: '2023',
entity: 'en10301',
'year-period': '2023-3',
},
},
{
period: '三月',
year: '2023年',
entity: '河北制罐',
'year-period': '2023年-三月',
bq: 49096,
dq: 53332,
_origin: {
period: '3',
year: '2023',
entity: 'En10302',
'year-period': '2023-3',
},
},
{
period: '三月',
year: '2023年',
entity: '成都制罐',
'year-period': '2023年-三月',
bq: 74394.4,
dq: 66293.333333,
_origin: {
period: '3',
year: '2023',
entity: 'En10303',
'year-period': '2023-3',
},
},
{
period: '三月',
year: '2023年',
entity: '哈尔滨制罐',
'year-period': '2023年-三月',
bq: 71232.1,
dq: 97192.090909,
_origin: {
period: '3',
year: '2023',
entity: 'En10314',
'year-period': '2023-3',
},
},
{
period: '四月',
year: '2023年',
entity: '两片罐事业部',
'year-period': '2023年-四月',
bq: 62799.3,
dq: 67454,
_origin: {
period: '4',
year: '2023',
entity: 'Can_BU',
'year-period': '2023-4',
},
},
{
period: '四月',
year: '2023年',
entity: '宝翼制罐',
'year-period': '2023年-四月',
bq: 37567,
dq: 0,
_origin: {
period: '4',
year: '2023',
entity: 'en10301',
'year-period': '2023-4',
},
},
{
period: '四月',
year: '2023年',
entity: '河北制罐',
'year-period': '2023年-四月',
bq: 50150.1,
dq: 70442.733333,
_origin: {
period: '4',
year: '2023',
entity: 'En10302',
'year-period': '2023-4',
},
},
{
period: '四月',
year: '2023年',
entity: '成都制罐',
'year-period': '2023年-四月',
bq: 75448.5,
dq: 56665,
_origin: {
period: '4',
year: '2023',
entity: 'En10303',
'year-period': '2023-4',
},
},
{
period: '四月',
year: '2023年',
entity: '哈尔滨制罐',
'year-period': '2023年-四月',
bq: 72286.2,
dq: 100535.760606,
_origin: {
period: '4',
year: '2023',
entity: 'En10314',
'year-period': '2023-4',
},
},
{
period: '五月',
year: '2023年',
entity: '两片罐事业部',
'year-period': '2023年-五月',
bq: 63853.4,
dq: 23566,
_origin: {
period: '5',
year: '2023',
entity: 'Can_BU',
'year-period': '2023-5',
},
},
{
period: '五月',
year: '2023年',
entity: '宝翼制罐',
'year-period': '2023年-五月',
bq: 38555,
dq: -10000,
_origin: {
period: '5',
year: '2023',
entity: 'en10301',
'year-period': '2023-5',
},
},
{
period: '五月',
year: '2023年',
entity: '河北制罐',
'year-period': '2023年-五月',
bq: 51204.2,
dq: 73786.40303,
_origin: {
period: '5',
year: '2023',
entity: 'En10302',
'year-period': '2023-5',
},
},
{
period: '五月',
year: '2023年',
entity: '成都制罐',
'year-period': '2023年-五月',
bq: 76502.6,
dq: 65554,
_origin: {
period: '5',
year: '2023',
entity: 'En10303',
'year-period': '2023-5',
},
},
{
period: '五月',
year: '2023年',
entity: '哈尔滨制罐',
'year-period': '2023年-五月',
bq: 73340.3,
dq: 103879.430303,
_origin: {
period: '5',
year: '2023',
entity: 'En10314',
'year-period': '2023-5',
},
},
{
period: '六月',
year: '2023年',
entity: '两片罐事业部',
'year-period': '2023年-六月',
bq: 64907.5,
dq: 67456,
_origin: {
period: '6',
year: '2023',
entity: 'Can_BU',
'year-period': '2023-6',
},
},
{
period: '六月',
year: '2023年',
entity: '宝翼制罐',
'year-period': '2023年-六月',
bq: 39609.1,
dq: 22222,
_origin: {
period: '6',
year: '2023',
entity: 'en10301',
'year-period': '2023-6',
},
},
{
period: '六月',
year: '2023年',
entity: '河北制罐',
'year-period': '2023年-六月',
bq: 52258.3,
dq: 77130.072727,
_origin: {
period: '6',
year: '2023',
entity: 'En10302',
'year-period': '2023-6',
},
},
{
period: '六月',
year: '2023年',
entity: '成都制罐',
'year-period': '2023年-六月',
bq: 77556.7,
dq: 53332,
_origin: {
period: '6',
year: '2023',
entity: 'En10303',
'year-period': '2023-6',
},
},
{
period: '六月',
year: '2023年',
entity: '哈尔滨制罐',
'year-period': '2023年-六月',
bq: -34394.4,
dq: 107223.1,
_origin: {
period: '6',
year: '2023',
entity: 'En10314',
'year-period': '2023-6',
},
},
{
period: '七月',
year: '2023年',
entity: '两片罐事业部',
'year-period': '2023年-七月',
bq: 65961.6,
dq: 0,
_origin: {
period: '7',
year: '2023',
entity: 'Can_BU',
'year-period': '2023-7',
},
},
{
period: '七月',
year: '2023年',
entity: '宝翼制罐',
'year-period': '2023年-七月',
bq: 40663.2,
dq: 39998,
_origin: {
period: '7',
year: '2023',
entity: 'en10301',
'year-period': '2023-7',
},
},
{
period: '七月',
year: '2023年',
entity: '河北制罐',
'year-period': '2023年-七月',
bq: 53312.4,
dq: 80473.742424,
_origin: {
period: '7',
year: '2023',
entity: 'En10302',
'year-period': '2023-7',
},
},
{
period: '七月',
year: '2023年',
entity: '成都制罐',
'year-period': '2023年-七月',
bq: 78610.8,
dq: 70442.733333,
_origin: {
period: '7',
year: '2023',
entity: 'En10303',
'year-period': '2023-7',
},
},
{
period: '七月',
year: '2023年',
entity: '哈尔滨制罐',
'year-period': '2023年-七月',
bq: 75448.5,
dq: 61292.833333,
_origin: {
period: '7',
year: '2023',
entity: 'En10314',
'year-period': '2023-7',
},
},
{
period: '八月',
year: '2023年',
entity: '两片罐事业部',
'year-period': '2023年-八月',
bq: 67015.7,
dq: 0,
_origin: {
period: '8',
year: '2023',
entity: 'Can_BU',
'year-period': '2023-8',
},
},
{
period: '八月',
year: '2023年',
entity: '宝翼制罐',
'year-period': '2023年-八月',
bq: 41717.3,
dq: 48877,
_origin: {
period: '8',
year: '2023',
entity: 'en10301',
'year-period': '2023-8',
},
},
{
period: '八月',
year: '2023年',
entity: '河北制罐',
'year-period': '2023年-八月',
bq: 54366.5,
dq: 83817.412121,
_origin: {
period: '8',
year: '2023',
entity: 'En10302',
'year-period': '2023-8',
},
},
{
period: '八月',
year: '2023年',
entity: '成都制罐',
'year-period': '2023年-八月',
bq: 79664.9,
dq: 73786.40303,
_origin: {
period: '8',
year: '2023',
entity: 'En10303',
'year-period': '2023-8',
},
},
{
period: '八月',
year: '2023年',
entity: '哈尔滨制罐',
'year-period': '2023年-八月',
bq: 76502.6,
dq: 66293.333333,
_origin: {
period: '8',
year: '2023',
entity: 'En10314',
'year-period': '2023-8',
},
},
{
period: '九月',
year: '2023年',
entity: '两片罐事业部',
'year-period': '2023年-九月',
bq: 68069.8,
dq: 22222,
_origin: {
period: '9',
year: '2023',
entity: 'Can_BU',
'year-period': '2023-9',
},
},
{
period: '九月',
year: '2023年',
entity: '宝翼制罐',
'year-period': '2023年-九月',
bq: 42771.4,
dq: 49999,
_origin: {
period: '9',
year: '2023',
entity: 'en10301',
'year-period': '2023-9',
},
},
{
period: '九月',
year: '2023年',
entity: '河北制罐',
'year-period': '2023年-九月',
bq: 55420.6,
dq: 87161.081818,
_origin: {
period: '9',
year: '2023',
entity: 'En10302',
'year-period': '2023-9',
},
},
{
period: '九月',
year: '2023年',
entity: '成都制罐',
'year-period': '2023年-九月',
bq: 80719,
dq: 77130.072727,
_origin: {
period: '9',
year: '2023',
entity: 'En10303',
'year-period': '2023-9',
},
},
{
period: '九月',
year: '2023年',
entity: '哈尔滨制罐',
'year-period': '2023年-九月',
bq: 77556.7,
dq: 56665,
_origin: {
period: '9',
year: '2023',
entity: 'En10314',
'year-period': '2023-9',
},
},
],
};
ReactDOM.render(
<SheetComponent
dataCfg={dd}
options={s2Options}
adaptive={{
width: true,
height: false,
getContainer: () => document.getElementById('container'),
}}
/>,
document.getElementById('container'),
);
});
🔗 Reproduce Link
https://s2-v1.antv.antgroup.com/examples/layout/adaptive#react-adaptive
打开上面链接,并将代码替换成上面Code Snapshots中的代码
🤔 Steps to Reproduce
- 当前例子复制到excel中,表头无法复制成功
😊 Expected Behavior
上述例子可以正常复制表头
😅 Current Behavior
💻 System information
Environment | Info |
---|---|
System | |
Browser |
这个是 1.x 版本的设计缺陷, 内部使用了 "-" 来分割行列数据: "行头维值-列头维值"
S2/packages/s2-core/src/utils/export/copy.ts
Line 634 in 84ebee2
你这里的行头维值刚好带了分割线 "2023年-四月", 所以解析出来是 "2023" 和 "四月", 导致导出异常, 近期修复该问题.
🎉 This issue has been resolved in version @antv/s2-v1.55.3 🎉
The release is available on:
Your semantic-release bot 📦🚀
🎉 This issue has been resolved in version @antv/s2-v2.0.0-next.19 🎉
The release is available on:
Your semantic-release bot 📦🚀