天天看点

vue导出Excel

(好久没写博客了。遇到的知识点也没做什么总结。哎~懒惰了)

项目需求: 需要可以导出excel表格

html:

<button type="button" class="btn btn-sm btn-primary" @click="exportToExcel">导出</button>
           

js:

tHeader:导出的excel表格的表头

filterVal:tableData数组中每个对象的相关字段

tableData:数据(以下截图为tableData的模拟数据)

vue导出Excel
exportToExcel() {
	require.ensure([], () => {
		const {
			export_json_to_excel
		} = require('../assets/js/Export2Excel');
		const tHeader = ['序号','形容', '名字'];
		const filterVal = ['index','nickName', 'name'];
		const list = this.tableData;
		const data = this.formatJson(filterVal, list);
		export_json_to_excel(tHeader, data, '列表excel');
	})
},
formatJson(filterVal, jsonData) {
	return jsonData.map(v => filterVal.map(j => v[j]));
}
           

下面说下相关配置及依赖:

1、安装依赖包

cnpm install file-saver

cnpm install xlsx

cnpm install script-loader

2、在项目中创建一个文件夹用来存放Blob和Export2Excel两个js文件

vue导出Excel

3、说明

vue导出Excel

如果遇见报错,打开Export2Excel.js文件看下Blob.js的引用路径是否正确。如果没有报错,恭喜完成。

Blob.js和Export2Excel.js文件下载地址

链接:https://pan.baidu.com/s/1KGma9ClnW0jCmyf8uyEQJA 密码:7aem

感谢:https://www.cnblogs.com/zhoulifeng/p/9974735.html(参考作者)

完成!! 如果没有什么问题,那么您需要的导出就完成了。下面是个小问题,本人至今不知道怎么解决【哭咧咧】,麻烦哪位大神指导下多谢。

我已经按照成功的导出excel并且数据都正确,但是控制台还是报错。不知道怎么解决~

vue导出Excel

谢谢大神了,帮帮我~ 嘤嘤