当前位置:   article > 正文

js 前端实现将json格式数组下载到excel(xls、xlsx、csv)表格里_js 数组数据保存excel文件

js 数组数据保存excel文件

项目需求:上传文件时如果有错误信息,则上传不成功,需要提示用户下载查看错误信息。下载查看错误信息是前端根据后台返回的对象数组放到excel表格中的。

后台返回的数组:

效果如下:

在开始之前先要了解一下几个excel格式的区别:

1.后缀是xls的在2007版本之后的office打开会有提示(xls在wps上打开没有提示)

2.后缀是xlsx在2007版本之后的打开没有提示,但是在2007之前的版本会打不开

3.csv是最通用的一种文件格式,它可以非常容易的被导入各种pc表格及数据库中,此文件中一行即为数据表的一行。生成数据表字段用半角逗号隔开。但是csv不能设置样式。

第一种:生成xls

代码如下:

  1. // 错误信息下载
  2. exportEx = val => { // val:需要导出的json数据
  3. let JSONData = val;
  4. let ShowLabel = ['序号', 'imei', '错误原因']; // 导出的excel的表头数据
  5. //先转化json
  6. let arrData = typeof JSONData != 'object' ? JSON.parse(JSONData) : JSONData;
  7. // 给数组内容换好位置
  8. let finalData = []; // 最终要导出的json数据,其中json数据顺序要和表头数据顺序一致
  9. arrData.forEach(item => {
  10. let obj = {
  11. rowNum: item.rowNum,
  12. imei: item.imei ? item.imei : '',
  13. errorMsg: item.errorMsg,
  14. };
  15. finalData.push(obj);
  16. });
  17. let excel = '<table>';
  18. //设置表头
  19. let row = '<tr>';
  20. for (let i = 0; i < ShowLabel.length; i++) {
  21. row += '<td>' + ShowLabel[i] + '</td>';
  22. }
  23. //换行
  24. excel += row + '</tr>';
  25. //设置数据
  26. for (let i = 0; i < finalData.length; i++) {
  27. let r
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/770425
推荐阅读
相关标签
  

闽ICP备14008679号