我用 element-ui 的 el-table 组件做了一张表,其中有很多项数据都并不是来自远程抓取,而是在渲染 el-table 的时候进行了处理、计算、格式化生成的表格。
可是我现在需要将 el-table 显示的数据导出,也就是想要导出 el-table 表格里显示的数据,我应该从哪里获取到这份数据?
可是我现在需要将 el-table 显示的数据导出,也就是想要导出 el-table 表格里显示的数据,我应该从哪里获取到这份数据?
1
statement Oct 20, 2021
exportExcel(event,excelName='') {
//excelName --设置导出的 excel 名称 //report-table --对应的要导出的 el-table 的 ref 名称 excelName = this.startMonth +' ~ '+ this.endMonth + '' try { const $e = this.$refs['report-table'].$el; // 如果表格加了 fixed 属性,则导出的文件会生产两份一样的数据,所以可在这里判断一下 let $table = $e.querySelector('.el-table__fixed'); if (!$table) { $table = $e; } // 为了返回单元格原始字符串,设置{ raw: true } const wb = XLSX.utils.table_to_book($table, { raw: true }); const wbout = XLSX.write(wb, { bookType: 'xls', bookSST: true, type: 'array' }); console.log(wbout) saveAs( new Blob([wbout], { type: 'application/octet-stream' }), `${excelName}.xls` ); } catch (e) { if (typeof console !== 'undefined') console.error(e); } }, }, |
2
kamal Oct 20, 2021 理论上来说,在代码里重放“处理、计算、格式化”的逻辑应该更简单吧?
|
3
x66 Oct 20, 2021 |