downloadExcelCreateA (resData, fileName) { // 下载文件 var blob = new Blob([resData],{ type: 'application/vnd.ms-excel' }) var downloadElement = document.createElement('a'); var href = window.URL.createObjectURL(blob); //创建下载的链接 downloadElement.href = href; downloadElement.download = fileName; //下载后文件名 document.body.appendChild(downloadElement); downloadElement.click(); //点击下载 document.body.removeChild(downloadElement); //下载完成移除元素 window.URL.revokeObjectURL(href); //释放掉blob对象 }, downloadPreExcelBlob () { // return console.log(this.searchForm, 'searchform') let self = this self.fullscreenLoading = true; let load = esp.url this.$axios({ url: load, params: this.searchForm, method: 'get', responseType: 'blob', }) .then(function(response) {// 成功 const resData = response.data const fileReader = new FileReader() fileReader.onloadend = () => { if (resData.type === 'application/json') { let jsonData = JSON.parse(fileReader.result) // 说明是普通对象数据,后台转换失败 // 后台信息 // console.log(jsonData) let type = 'error' jsonData.code == 200 ? type = 'success' : 'error' self.$message({ message: jsonData.data || '系统维护中,稍后再来吧!', showClose: true, type: type, duration: 3000 }); } else { // 下载文件 self.downloadExcelCreateA(resData, '预约导出.xls') self.fullscreenLoading = false; }} // console.log(resData) fileReader.readAsText(resData) self.fullscreenLoading = false; }).catch(function(error) { self.fullscreenLoading = false; console.log(error) }); },
标签:文件,console,self,Excel,resData,报错,downloadElement,type,下载 From: https://www.cnblogs.com/everseventh/p/17435296.html