前端导出excel

前端导出excel

1.依赖安装

npm install xlsx --save
npm install file-saver --save

 2.依赖导入

import XLSX from 'xlsx';

3.数据说明

datas是数据,viewCols是表头

  downLoadView() {
      const vm = this;
      // 创建工作簿
      const formattedData = this.datas.map((item) => {
        const formattedItem = {};
        this.viewCols.forEach((col) => {
          // 保留两位小数
          let value = item[col.key];
          const numericValue = parseFloat(value);
          if (!isNaN(numericValue)) {
            value = parseFloat(parseFloat(value).toFixed(2));
          }
          formattedItem[col.name] = value;
        });
        return formattedItem;
      });
      // 确保无数据时有表头
      if (formattedData == null || formattedData.length === 0) {
        let colHeader = {};
        for (let col of vm.viewCols) {
          colHeader[col.name] = '';
        }
        formattedData.push(colHeader);
      }
      // 创建工作簿
      const ws = XLSX.utils.json_to_sheet(formattedData);
      const wb = XLSX.utils.book_new();
      XLSX.utils.book_append_sheet(wb, ws, 'Sheet1');
      // 导出 Excel 文件
      XLSX.writeFile(wb, vm.getCurrentTimeString() + '_查询数据.xlsx');
    },

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不懂代码的孩子

谢谢大佬

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值