sheetJS库的三个导出方法

971 阅读1分钟

介绍三个方法:

  1. XLSX.utils.aoa_to_sheet: 将一个二维数组转成sheet,会自动处理number、string、boolean、date等类型数据;
  2. XLSX.utils.table_to_sheet: 将一个table的dom直接转成sheet,会自动识别colspan和rowspan并将其转成对应的单元格合并;
  3. XLSX.utils.json_to_sheet: 将一个由对象key-value组成的数组转成sheet,可以设置header。
第一个方法的例子
function downloadExcel () {
    let filename = "file.xlsx"; //文件名称
    let data = [ ['表头1','表头2'],['','z','b'], [1,2,3],[true,false,"sheetjs"],["foo","bar",new Date("2014-02-19T14:30Z"),"0.3"], ["baz",null,"qux"]];  
    //数据,一定注意需要时二维数组
    let ws_name = "Sheet1"; //Excel第一个sheet的名称
    let wb = XLSX.utils.book_new(), 
    let ws = XLSX.utils.aoa_to_sheet(data);
    XLSX.utils.book_append_sheet(wb, ws, ws_name);  //将数据添加到工作薄
    XLSX.writeFile(wb, filename); //导出Excel
}
结果如图:

1634977974(1).jpg

后两个方法比较简单就不赘述了