vue 文件导出(下载)时打不开、空白或者乱码的情况

2022-12-22 0 834

文档浏览或求出时看不清楚、盲点或错字:

可能将是没增设responseType,预设为空,值能为blob、arrayBuffer、json、text、document、json

通常后端回到文档流,因此需要展开回到统计数据的处置:依照前台回到情形设相同的值

axios.get({

url:xxxxxx,

method:get,

data:{},

responseType:blob

}).then(res =>{

console.log(res);

});

vue 文件导出(下载)时打不开、空白或者乱码的情况

文档格式切换回来了,下一步棋是浏览和重新命名:

axios.get({

url:xxxxxx,

method:get,

data:{},

responseType:blob

}).then(res =>{

const blob = new Blob([res]);

const a = document.createElement(a);

//此处文档名称和文档后缀依照项目情形而定

a.download =文档名称.xlsx;

a.style.display =none;

a.href = URL.createObjectURL(blob);

document.body.appendChild(a);

a.click();

URL.revokeObjectURL(a.href);

document.body.removeChild(a);

});

此处须要说下 new Bolb()

var aBlob = new Blob( array, options );

参数

array 是一个由ArrayBuffer, ArrayBufferView, Blob, DOMString 等对象构成的 Array ,或是其他类似对象的混合体,它将会被放进 Blob。DOMStrings会被编码为UTF-8。options 是一个可选的BlobPropertyBag字典,它可能将会指定如下两个属性:type,预设值为””,它代表了将会被放入到blob中的数组内容的MIME类型。endings,预设值为”transparent”,用于指定包含行结束符\n的字符串如何被写入。它是以下两个值中的一个:”native”,代表行结束符会被更改为适合宿主操作系统文档系统的换行符,或是”transparent”,代表会保持blob中保存的结束符不变 Non-Standard

示例

var aFileParts =[hey!];//一个包含DOMString的数组

var oMyBlob = new Blob(aFileParts,{type :text/html});//得到 blob

#VUE#

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务