解决vue中download下载属性在跨域中失败问题
2021-02-06 本文已影响0人
迩菜flysun
原来代码如下:
<a :href='baseurl+item.src' :download='item.name' ><i class="iconfont icon-xiazai1"></i>
download会在vue失败导致的 自定义重新命名失败,原因是因为跨域!
换成如下代码
<a @click="downloadFile(item.src,item.name)" ><i class="iconfont icon-xiazai1"></i></a>
//加上js
downloadFile(url, fileName) {
var x = new XMLHttpRequest();
x.open("GET", url, true);
x.responseType = 'blob';
x.onload=function(e) {
var url = window.URL.createObjectURL(x.response)
var a = document.createElement('a');
a.href = url
a.download = fileName;
a.click()
}
x.send();
},