export(url, param, fileName) {
return new Promise(resolve => {
instance({
method: 'post',
url,
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
data: qs.stringify(param),
responseType: 'blob',
})
.then(res => {
const blob = new Blob([res.data], { type: 'application/vnd.ms-excel' });
if (window.navigator.msSaveOrOpenBlob) {
window.navigator.msSaveBlob(blob, fileName);
} else {
const linkNode = document.createElement('a');
linkNode.download = fileName; // a标签的download属性规定下载文件的名称
linkNode.style.display = 'none';
linkNode.href = URL.createObjectURL(blob); // 生成一个Blob URL
document.body.appendChild(linkNode);
linkNode.click(); // 模拟在按钮上的一次鼠标单击
URL.revokeObjectURL(linkNode.href); // 释放URL 对象
document.body.removeChild(linkNode);
}
resolve('导出成功');
})
.catch(err => {
console.error(err);
});
});
}