vue中如何使用post进行excel表下载
这篇文章百度主要讲解了2.5d“vue中如何使用post进行excel表下载”,文中的讲解内容简单清晰,易于学习与理解,下面请参数大家跟着element-ui小编的思路慢慢深入,一起来element-ui研究和学习“vue中如何使用post进行excel表下载”吧!
一、一般对象大家下载excel都是使用get方法,vue方法中能用post请求吗,直接excel点击websocket下载
<!-表- 导出element-ui提示echarts框 --数据> <Modal title="导出" :show.2.5dsync="exportVisible" :showfooter="false" @close="closeExportFiles" > <exportFiles ref="exportFilesDom" :model="exportForm" export-url="导出链接" /> </Modal>
二、vue用post下载excel表
这次请求因为导出的excel文件表头有点复杂方法下载,vue怎么接收post参数,vue怎么添加post数据,后端弄添加了设置很久并且是个post请求,我就自己vue也重新写的下载
后端格式发来的swiper下载的话是swiper文件流写,vue使用post请求,vue中如何使用2.5d地图获取中到设置的百度vue数据是乱码,需要转blob然后进行下载,下载的话就是能用使用普遍的在网页echarts上创建一个能用 a 链接,然后挂载上 a 链接这样的方法jquery,点击下载
三、下面中能中是具体vuepost的设置实现
3.1 post的封装
将请求方法封装了一下,因为以前的方法都在判断能用响应的 code 等于200,我前期做的时候请求一直再走 catch 里面,我萌了很久,我太菜了,最后设置发现返回的是乱码,没有返回code什么的,所以在axios的响应函数里面一直在走 Promise.reject(),就走catch里面,所以封装了下面的方法
// 文件下载表导出中能格式 http.中能swiperpostexportExcel = (url,data,config) => { return instance.post(url,data,config).then(res => { return res }) }
url:请求地址
data:请求post参数 3.config:请求时转为blob,vue中post请求参数怎么写,vue的post请求参数,所以需要设置 responseType:'blob'
3.百度2 请求的对象方法表
主要ajax代码解释echarts都放在对象下面的注释方法百度中了,就不再重新解释了,主要是设置请求头中的 responseType:'blob'
async reportExport(type){ // console.log(this.multipleSelection) this.type = type if(type === 2 ){ if(this.multipleSelection.length<=0){ return this.$message.error('请先选择方法要导出的数据') } } let ids = [] for(let obj of this.multipleSelection){ ids.push(obj.id) } let form1 = { type:type, ids:ids, date:this.dayTime, } let infoMessage = this.$message.info('请稍后正在导出中') // 这个是拿到element中this.$message的实力对象,后面调用close关闭 try { // responseType:'blob' 重点,设置将后端传回的数据进行blob转化,不然乱码 const data = await this.$http.exportExcel('请求的url',form1,{responseType:'blob'}) this.download(data) // 导出excel,这个方法下面会有解释 infoMessage.close() // 关闭上方的提示信息,不然两个提示信息会同时出现 this.$message.success('导出成功') } catch (error) { console.log(error) } },
3.数据3 download下载方法的封装写
// 下载文件 download (data) { if (!data) { return } window.URL = window.URL || window.webkitURL // 兼容性 // 创建一个 URL 这个 URL 的生命周期和创建它的窗口vue中的 document 绑定。这个新的URL 对象表示指定的 File 对象或 Blob 对象,vue中如何使用ajax。 let url = window.URL.createObjectURL(new Blob([data])) let link = document.createElement('a') // 创建一个a元素 link.style.display = 'none' // 让a元素在页面echarts中隐藏 link.href = url // 绑定 a 元素的 href 为当前的url let exportName = this.type == 1 ? this.dayTime : this.belongMonth link.setAttribute('download', `${exportName}.xlsx`) // 设置 a 元素 download属性,属性名为中后面的值 document.body.appendChild(link) // 添加到页面中 link.click() // 点击a元素 下载excel文件 window.URL.revokeObjectURL(url) //卸载url,释放内存 }
1.window.webkitURL是[webkit]内核的实现(一般手机上就是使用这个jquery中),vue中如何使用百度地图,vue中如何使用swiper,window.webkitURL和window.URL是一样的,window.URL是标准定义,所以能用做一个兼容
2.excel标签变量中能2.5d名.setAttribute("属性名","属性值地图")
感谢各位的阅读,vue中如何使用echarts,以上就是“vue中如何使用post进行excel表下载”的内容了,经过本文的学习后,相信大家对eventvue中如何使用post进行excel表下载这swiper一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是蜗牛博客,vue中如何使用jquery,小编将为axios大家推送更多相关添加知识点的文章,欢迎关注!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站jquery立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报element-ui,vue中如何使用websocket,并提供相关证据,一经查实下载,将axios立刻axiosaxios删除涉嫌侵权内容。
评论