如题,axios接口调用,用生成的blob对象经过如下处理
var blob = new Blob([data])
var downloadElement = document.createElement('a');
// var downloadElement = document.getElementById('download')
var href = window.URL.createObjectURL(blob); //创建下载的链接
downloadElement.href = href;
downloadElement.download = '用户数据.xlsx'; //下载后文件名
document.body.appendChild(downloadElement);
downloadElement.click(); //点击下载
document.body.removeChild(downloadElement); //下载完成移除元素
window.URL.revokeObjectURL(href); //释放掉blob对象
此时谷歌左下角会自动弹出文件下载,在火狐上的表现如下图
火狐是74.0版本
这个弹窗闪一下就没了,问题出在那?我看有人说不要创建a标签,在页面上初始化一个a标签隐藏,但是也没用.谁能解答下疑问感谢,百思不得其解
改成异步的呢?我之前同步的是没有问题的。
或者别释放
window.URL.revokeObjectURL(href); //释放掉blob对象