前端生成excel文件-excelJs插件

使用场景:

无api提供excel,前端根据数据,导出excel文档(自定义excel内容样式)。

使用技术:excelJs插件

实现图例:

实现代码:

    //创建工作表
    const workbook = new Workbook();
    workbook.creator = "sheet1";
    workbook.lastModifiedBy = "sheet1";
    workbook.created = new Date();
    workbook.modified = new Date();
    // 将工作簿日期设置为 1904 年日期系统
    workbook.properties.date1904 = true;
    const worksheet = workbook.addWorksheet("sheet1");
    worksheet.properties.defaultColWidth = 12; // 默认列宽
    // worksheet.properties.defaultRowHeight = 20; // 默认行高
    //定义表格标题
    const Targetrow = worksheet.getRow(1);
    Targetrow.height = 20;
    const Targetcell = worksheet.getCell(`A1`);
    worksheet.mergeCells(`A1:${this.conversionASCII('A', colCount - 1, '+')}1`);
    Targetcell.value = `${this.translateService.instant('dj-default-目标机型') + ':' + data.viewDetailTargetNo}`;
    Targetcell.font = { name: "宋体", family: 4, size: 11, bold: true }; // 字体
    Targetcell.alignment = { vertical: "middle", horizontal: "left" }; //对齐
    // 定义表格内容
    worksheet.addTable({
      name: "TargetTable",
      ref: `A2`,
      displayName: "目标机型",
      headerRow: true, // 在表格顶部显示标题
      totalsRow: false, // 在表格底部显示总计
      columns: this.formatCol(data.openStageFlag, data.compareMethodFlag),
      rows: targetModelExcels,
    });
    //第二个表格定义同上,代码省略
    
    //下载excel文档
    let myDate = new Date().toLocaleString();
    let time = myDate.split(/(?:\/|:|\s)/).join('');
    //下载excel表格
    workbook.xlsx.writeBuffer().then((buffer) => {
      // eslint-disable-next-line no-undef
      saveAs(
        new Blob([buffer], {
          type: "application/octet-stream",
        }),
        'BOM_' + time + '.xlsx'
      );
    });
    

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值