yarn add file-saver
yarn add XLSX @^0.16.9 (只能是这个版本,最新版会 报错 utils 文件没有)
<el-table ref="table" :data="tableData" style="width: 100%"> <el-table-column prop="date" label="日期" width="150"> </el-table-column> <el-table-column label="配送信息"> <el-table-column prop="name" label="姓名" width="120"> </el-table-column> <el-table-column label="地址"> <el-table-column prop="province" label="省份" width="120"> </el-table-column> <el-table-column prop="city" label="市区" width="120"> </el-table-column> <el-table-column prop="address" label="地址" width="300"> </el-table-column> <el-table-column prop="zip" label="邮编" width="120"> </el-table-column> </el-table-column> </el-table-column> </el-table>
<el-button @click="exportExcel('导出')">导出</el-button>
methods: { exportExcel(excelName) { try { const $e = this.$refs['table'].$el // 这个table 为 ref 绑定的 id let $table = $e.querySelector('.el-table__fixed') if(!$table) { $table = $e } const wb = XLSX.utils.table_to_book($table, {raw:true}) const wbout = XLSX.write(wb, {bookType: 'xlsx', bookSST:true, type: 'array'}) FileSaver.saveAs( new Blob([wbout],{type: 'application/octet-stream'}), `${excelName}.xlsx`, ) } catch (e) { if (typeof console !== 'undefined') console.error(e) } } },