elementUI,cool-admin,el-table/cl-table 导出Excel表格有重复数据的问题

子成君 14 0

1、安装依赖

安装了俩依赖,xlsx和file-saver

npm install --save xlsx file-saver

2、页面引入

import FileSaver from 'file-saver'
import XLSX from 'xlsx'

3、methods中引入方法

其中参数id是是el-table的id,title是导出的excel的名字

exportExcel (id,title) {
  /* generate workbook object from table */
  var wb = XLSX.utils.table_to_book(document.querySelector('#'+id))
  /* get binary string as output */
  var wbout = XLSX.write(wb, { bookType: 'xlsx', bookSST: true, type: 'array' })
   try {
      FileSaver.saveAs(new Blob([wbout], { type: 'application/octet-stream' }), title+'.xlsx')
   } catch (e) { if (typeof console !== 'undefined') console.log(e, wbout) }
   return wbout
}

这样做是可以导出表格的,但有个问题是导出的数据是重复的,详细原因及解决方可以看这篇博客:https://juejin.im/post/6844903757159858190

因为每个人的设置不同,需要移除的某个class 不同

我的是el-table__fixed-right,而解决方案里的是el-table__fixed,到时候注意这个即可

搜索tbody查看一下就知道了,注意如果是cool-admin的cl-table给的id不能直接选中el-table__fixed或el-table__fixed-right 指向你定义的id的子节点即可#id>.el-table

elementUI,cool-admin,el-table/cl-table 导出Excel表格有重复数据的问题

发表评论 取消回复
OwO 图片 链接 代码

分享