看官方文档看到的,记录一下,帮大家踩坑。
//待展示的数据,可能是从后台返回的json数据或者是自己定义的object
const data = [
{ S:1, h:2, e:3, e_1:4, t:5, J:6, id:7 },
{ S:2, h:3, e:4, e_1:5, t:6, J:7, id:8 }
];
//展示的顺序,把data中对象的属性按照你想要的顺序排放就可以了,我这里把id移到了第一列展示
const header = ["id", "S","h","e","e_1","t","J"];
var worksheet = XLSX.utils.json_to_sheet(data, {header:header});
这样生成的表头就是header,到时生成的表格大致长这样:
id | S | h | e | e_1 | t | J |
7 | 1 | 2 | 3 | 4 | 5 | 6 |
8 | 2 | 3 | 4 | 5 | 6 | 7 |
//待展示的数据,可能是从后台返回的json数据或者是自己定义的object
const data = [
{ S:1, h:2, e:3, e_1:4, t:5, J:6, id:7 },
{ S:2, h:3, e:4, e_1:5, t:6, J:7, id:8 }
];
//展示的顺序,把data中对象的属性按照你想要的顺序排放就可以了,我这里把id移到了第一列展示
const header = ["id", "S","h","e","e_1","t","J"];
//展示的名称
const headerDisplay = {S:"S栏", h:"h栏", e:"e栏", e_1:"e_1栏", t:"t栏", J:"J栏", id:"id栏"};
//将表头放到原始数据里面去,要保证表头在数组的最前面
const newData = [headerDisplay, ...data];
//加了一句skipHeader:true,这样就会忽略原来的表头
var worksheet = XLSX.utils.json_to_sheet(newData, {header:header, skipHeader:true});
这样生成的表头就是headerDisplay ,到时生成的表格大致长这样:
id栏 | S栏 | h栏 | e栏 | e_1栏 | t栏 | J栏 |
7 | 1 | 2 | 3 | 4 | 5 | 6 |
8 | 2 | 3 | 4 | 5 | 6 | 7 |