在我的方法中,我两次调用$emit
,但只有第一次尝试-reportDownloadStarted
有效,如果我注释掉第一次尝试,则只有第二次尝试-reportDownloadFinished
有效。这是我的方法:
downloadReport() {
this.$emit("reportDownloadStarted", true);
const endpoint = this.getEndpoint();
const someDummyData = []
reportsRequest({
url: endpoint,
method: "post",
data: someDummyData
})
.then(res => {
let link = `${process.env.VUE_APP_BASE_URL}/${res.data}`;
if (res.status === 200) {
window.open(link, "_blank").focus();
this.$emit("reportDownloadFinished", true);
}
})
.catch(e => {
console.log(e);
this.$emit("reportDownloadFinished", false);
});
}
你知道是什么原因导致这种行为吗?谢谢