Vue中将Element表格导出为excel

首先安装 xlsx和file-saver

安装17和2.0.5的版本是为了防止导出Excel表格时,utils未定义的问题

npm install --save [email protected]   
npm install --save [email protected]

然后在需要导出excel的页面导入

import FileSaver from "file-saver";
import XLSX from "xlsx";

最后再调用方法(exportTab是在table定义的  id="exportTab")

handleExport() {      
      var wb = XLSX.utils.table_to_book(
        document.querySelector("#exportTab"),
        xlsxParam
      );

      var wbout = XLSX.write(wb, {
        bookType: "xlsx",
        bookSST: true,
        type: "array",
      });
      try {
        FileSaver.saveAs(
          new Blob([wbout], { type: "application/octet-stream" }),
          "完工记录表.xlsx"
        );
      } catch (e) {
        if (typeof console !== "undefined") {
          console.log(e, wbout);
        }
      }
      return wbout;
}

也可以封装成一个方法在页面调用,在页面调用方法时将dom和导出的标题名称出入即可

handleExcel() {
               toExcel.getExcel('#exportTab','自定义标题')
            },

你可能感兴趣的:(vue,vue.js,前端,javascript,elementui)