这里我使用的React项目,方式:插件“js-export-excel”, 第一步先得安装js-export-excel插件
import ExportJsonExcel from 'js-export-excel';
对于ExportJsonExcel来说,他所需要的是一个数组,数组每一项为一个json对象,即为Excel表格的每一行。
如
[
{ “data” : 2019-01
"tag" : 5
"nottag" : 1
} ,
{ “data” : 2019-01
"tag" : 5
"nottag" : 1
}
]
有时候我们拿到的数据可能会不一样,这就需要我们先对数据进行一个格式化,再去给ExportJsonExcel赋值,我自己遇到的数据格式为这样的
数组一 [2019-01 , 2019-01]
数组二 [5 , 5 ]
数组三 [1 , 1 ]
这里用a1[] a2[] a3[] 来简写
//首先声明一个总的json[]来存放我们需要的数据
let json[];
//遍历数组的每一项
for(let i = 0;i<arrX.length;i++){
//存放每一项的一个对象
const j = {}
//通过J.xxx来声明属性名
j.data = a1[i];
j.useNumber = a2[i]
。
。
。//这里是多个属性值
json.push(j);
}
这里就将多个数组封装成了一个json对象,如第一张图,最后就是一个触发事件了,随便定义,触发函数如下:
downloadExcel = () => {
var option={};
option.fileName = '表格名称'
option.datas=[
{
//这里存放的是我们刚才格式化后的json数组
sheetData:json[],
sheetName:'sheet',
//这里的名字要和属性名对应上,如j.data j.useNumber
sheetFilter:['data','useNumber'],
//自定义每一列的名称
sheetHeader:['日期','调用量'],
}
];
var toExcel = new ExportJsonExcel(option);
//自动导出o'k
toExcel.saveExcel();
}