导出函数
// 验证是否为blob格式
export function blobValidate(data) {
return data.type !== 'application/json'
}
export function commonExport(params, fileName, action) {
action(params)
.then(async (data) => {
let downloadLoadingInstance = Loading.service({
text: "正在下载数据,请稍候",
spinner: "el-icon=loading",
background: "rgba(0,0,0,0.7)",
});
const isBlob = blobValidate(data);
if (isBlob) {
const blob = new Blob([data]);
saveAs(blob, fileName + moment().format("YYYY_MM_DD") + ".xls");
} else {
const resText = await data.txt();
const rspObj = JSON.parse(resText);
const errMsg =
errorCode[rspObj.code] || rspObj.msg || errorCode["default"];
Message.error(errMsg);
}
downloadLoadingInstance.close();
})
.catch((err) => {
console.log(err);
Message.error("下载文件出现错误,请联系管理员!");
downloadLoadingInstance.close();
});
}