vue如何解决导出excel遇到的问题?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!
需求:
vue + UI元素el-table下的导出当前所有数据到一个excel文件里。
先按照网上的方法,看看有哪些坑
准备工作:
1,安装依赖:纱添加,xlsx点击文件- s
2,在放置需要导出功能的组件中引入
从“进口filesave file-saver"; 从“进口XLSX xlsx";
3, HTML中的设置,简单来说就是给需要导出的表标签el-table上加一个id:如outTable,对应下面的exportExcel方法中的document.querySelector (# outTable)
//导出当前表格 exportCurrent:函数(){ var wb=XLSX.utils.table_to_book (document.querySelector (& # 39; # outTable& # 39;))//表格id var wbout=XLSX。写(wb, {bookType: & # 39; xlsx& # 39;, bookSST:真的,类型:& # 39;数组# 39;}) 尝试{ filesave。saveAs(新团([wbout]{类型:& # 39;应用程序/八进制# 39;}),& # 39;sheet.xlsx& # 39;)//文件名 }捕捉(e){如果(typeof控制台!==& # 39;未定义# 39;)控制台。日志(e, wbout)} 返回wbout },
我们来看一下原始数据
接下来再来看一下导出的结果
哎? ? ?我订单编号跟银行卡号咋成了科学计数法了? ?
还有我的时间,时分秒呢? ?
原因是因为数字太长了,需要使用excel的文本格式才能显示正常
经过各种搜索,最终解决方法如下:
exportExcel () { var xlsxParam={生:真};//转换成excel时,使用原始的格式 var wb=XLSX.utils.table_to_book (document.querySelector (“# outTable") xlsxParam); var wbout=XLSX。写(wb, { bookType:“xlsx" bookSST:没错, 类型:“array" }); 尝试{ FileSaver.saveAs ( 新团([wbout]{类型:“应用程序/八进制;charset=utf-8"}), “sheetjs.xlsx" ); }捕捉(e) { 如果(typeof控制台!==皍ndefined")控制台。日志(e, wbout); } 返回wbout; },
再来看我们的数据
感谢各位的阅读!看完上述内容,你们对vue如何解决导出excel遇到的问题大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注行业资讯频道。