vue2 使用 Export2Excel.js 前端导出数据为 excel 文件记录

1、将 export2Excel.js 内容复制到项目本地文件中

export2Excel.js 地址:
https://github.com/PanJiaChen/vue-element-admin/blob/master/src/vendor/Export2Excel.js
在这里插入图片描述

2、安装 xlsxfile-saver 依赖
npm install --s xlsx@0.17.5
npm install --s file-saver@2.0.5
3、组件当中使用

主要入参是 表头数据和内容数据源。
在这里插入图片描述

    // 下载为excel
    exportExcel () {
      try {
        // {分项名称}+{统计时段}+“能耗报表”+{导出时间(YYMMDDMMSS)}.xlxs
        // 文件名称
        const nowTime = formatDate(new Date(), 'yyMMddhhmm')
        const filename = `能耗报表${nowTime}`
        // 获取表头和数据
        const { headList, tableData } = this.$refs.EchartsViewRef.$refs.TableChartsRef
        const tHeader = headList.map(item => item.title) // 表格头部  ['时间','总量']
        const tData = [...tableData]
        const filterVal = headList.map(item => item.key) // 展示数据里哪些字 ['time','data']
        const data = this.formatJson(filterVal, tData) // 过滤掉不使用的数据字段
        // 文件数据处理完成后自动下载
        export_json_to_excel({
          header: tHeader, // 表头
          data,
          filename, // 文件名称
          autoWidth: true,
          bookType: 'xlsx' // 文件后缀名
        })
      } catch (error) {
        console.log(error)
      }
    },
   /**
     *  格式数据,对象数据格式 转为 json格式
     *  @filterVal  格式头
     *  @tableData  用来格式的表格数据
     */
    formatJson (filterVal, jsonData) {
      return jsonData.map(v => filterVal.map(j => v[j]))
    }
效果

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值