创建a标签下载(根据http地址下载)
function downloadFile(url){
let a=document.createElement('a') //创建一个a标签元素
a.style.display='none'; //设置元素不可见
a.href=url; //设置下载地址,http地址
document.body.appendChild(a); //追加dom元素
a.click(); //触发点击,下载
document.body.removeChild(a); //删除dom元素
}
downloadFile('通过接口拿到的http地址')
通过window.open下载(根据http地址下载)
window.open(url); //url为下载http地址
创建a标签下载(根据文件流下载)
function downloadFlow(flow, fileType){
let blob = new Blob([flow],{
// 下载的文件类型(如下)
type: fileType,
});
let link = document.createElement('a');
link.style.display = 'none';
link.href = window.URL.createObjectURL(blob); //生成一个Blob URL
document.body.appendChild(link);
link.click(); //点击事件
window.URL.revokeObjectURL(link.href); // 释放URL 对象
document.body.removeChild(link);
}
downloadFlow('通过接口拿到的文件流','image/png');
// type类型可参考: https://developer.mozilla.org/zh-CN/docs/Web/API/Blob
// fileType: "image/png"/"image/jpeg"/"image/gif"