前端导出excel表会导出两份的bug

前端导出excel有很多的操作可能,可以使用xlsx插件进行表格的导出,但是会导出两份,需要处理一下。
第一步引入:

import FileSaver from 'file-saver'
import XLSX from 'xlsx'
exportExcel (className,excelName) {
     var xlsxParam = { raw: true } // 导出的内容只做解析,不进行格式转换
     let fix = document.querySelector('.vxe-table--fixed-left-wrapper');
     let wb;
     if(fix){ //判断要导出的节点中是否有fixed的表格,如果有,转换excel时先将该dom移除,然后append回去
         wb = XLSX.utils.table_to_book(document.querySelector(className).removeChild(fix),xlsxParam);
         document.querySelector(className).appendChild(fix);
     }else{
         wb = XLSX.utils.table_to_book(document.querySelector(className),xlsxParam);
     }
     var wbout = XLSX.write(wb, { bookType: 'xlsx', bookSST: true, type: 'array' });
     
     try {
         FileSaver.saveAs(new Blob([wbout], { type: 'application/octet-stream' }), excelName)
     } catch (e) {
         if (typeof console !== 'undefined') {
         }
     }
     return wbout
 },

你可能感兴趣的:(导出excel,vue前端开发bug)