// 样式需要写入行内,通过class设置的样式,不会被带入excel
let str = '<table>
<tr>
<td style="color: #ffffff; background: pink">姓名</td>
<td>职别</td>
</tr>
<tr>
<td>张三</td>
<td>技术员</td>
</tr>
</table>'
// 方法一
function exportExecl1(){
const uri = 'data:application/vnd.ms-excel;base64,' + window.btoa(unescape(encodeURIComponent(str)))
const link = document.createElement("a");
link.href = uri;
// 下载的文件命名 也可以(5月数据表.xlsx)
link.download = "5月数据表.csv";
link.click();
}
// 方法二
function exportExecl2(){
const uri = 'data:text/csv;charset=utf-8,\ufeff' + encodeURIComponent(str);
const link = document.createElement("a");
link.href = uri;
// 下载的文件命名 也可以(5月数据表.xlsx)
link.download = "5月数据表.csv";
link.click();
就是如此简单
优点:
1、少量数据导出速度快,不需要消耗服务器资源
缺点:
1、只适合导出少量数据
2、数据量如果过大,太占用内存会导致超时失败,当前tab页进程崩溃。
3、前端数据有滞后性