700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > (vue)vue导出excel文件打不开 或者文件内容为object object

(vue)vue导出excel文件打不开 或者文件内容为object object

时间:2021-07-27 23:51:30

相关推荐

(vue)vue导出excel文件打不开 或者文件内容为object object

(vue)vue导出excel文件打不开,或者文件内容为object object[已解决]

bug:

主要原因:没有注意到后端返回的数据格式,需要的是res而不是res.data 正确写法:

<a-button type="primary" icon="download" @click="daochu"> 导出 </a-button>//导出daochu() {const paramsStr = JSON.stringify(this.form) //查询表单的数据axiosRest({url: `.../.../getConduitByExcel`,method: 'post',data: paramsStr,dataType: 'json',headers: {'Content-type': 'application/json;' }, //它声明了请求体中的数据将会以json字符串的形式发送到后端responseType: 'blob', //判断是下载成功返回了二进制流还是失败返回了对象(比如服务端拒绝,返回对象,前端如果依然按二进制流处理会导致下载undefined文件),还可以是}).then((res) => {console.log(res)const xlsx = 'application/vnd.ms-excel'const blob = new Blob([res], {type: xlsx })//转换数据类型const a = document.createElement('a') // 转换完成,创建一个a标签用于下载a.download = '管道列表' + new Date().getTime() + '.xlsx'a.href = window.URL.createObjectURL(blob)a.click()a.remove() })},

效果:

1.查询:

2.导出:

解决参考(和这位朋友的恰好相反):/weixin_48300785/article/details/125487232?spm=1001.2101.3001.6650.8&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Edefault-8-125487232-blog-109057377.pc_relevant_multi_platform_whitelistv2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Edefault-8-125487232-blog-109057377.pc_relevant_multi_platform_whitelistv2&utm_relevant_index=11

解决参考:/qq_45796667/article/details/125226309

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。