angular6导出Excel文件

参考: https://blog.csdn.net/qq_39252501/article/details/79656317

1. 下载依赖:file-saver和xlsx
npm install file-saver --save	
npm install @type/file-saver --save-dev
npm install xlsx --save
2. 在组件的ts文件中引入这两个依赖
import * as FileSaver from 'file-saver';
import * as XLSX from 'xlsx';
3. 写一个exportList(){ }方法,点击导出按钮时执行此方法,导出文件
 exportList(){
      let json = nameList;
      //这个nameList (随便起的名字),是要导出的json数据
      const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(json);
      const workbook: XLSX.WorkBook = { Sheets: { 'data': worksheet }, SheetNames: ['data'] };
      const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });
      //这里类型如果不正确,下载出来的可能是类似xml文件的东西或者是类似二进制的东西等
      this.saveAsExcelFile(excelBuffer, "nameList");
  }   
  private saveAsExcelFile(buffer: any, fileName: string) {
	    const data: Blob = new Blob([buffer], {
	    type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8'
  });
  FileSaver.saveAs(data, fileName + '_' + new Date().getTime() + '.xls');
          // 如果写成.xlsx,可能不能打开下载的文件,这可能与Excel版本有关
  }

这样就可以啦~

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值