import axios from "axios";
import qs from "qs";
if (item.resourceName == "导出") {
const [startTime = "", endTime = ""] = this.rangeTime || [];
let params = {
carNumber: this.carNumber,
billStatus: this.billStatus,
userPhone: this.userPhone,
billCode: this.billCode,
buildCodeList: this.buildCodeList,
timeType: this.timeType,
startTime,
endTime,
page: this.page,
size: this.size,
};
axios
.post(exportReservationList, qs.stringify(params), {
headers: {
"Content-Type": "application/x-www-form-urlencoded",
},
responseType: "blob",
})
.then((response) => {
const contentDisposition = response.headers["content-disposition"];
console.log("🚀 ~ .then ~ contentDisposition:", contentDisposition);
const filenameRegex = /filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/;
const matches = filenameRegex.exec(contentDisposition);
let filename = null;
if (matches != null && matches[1]) {
filename = decodeURIComponent(matches[1].replace(/['"]/g, ""));
}
console.log("文件名:", filename);
const url = window.URL.createObjectURL(new Blob([response.data]));
const link = document.createElement("a");
link.href = url;
link.setAttribute("download", filename);
document.body.appendChild(link);
link.click();
window.URL.revokeObjectURL(url);
})
.catch((error) => {
console.log("🚀 ~ showModal ~ error:", error);
this.$message({
message: "网络异常,请稍后再试!",
type: "error",
});
});
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律