【发布时间】:2021-10-10 14:28:44
【问题描述】:
请我尝试改进此代码以在向服务器发送单独的答案时显示进度或加载栏。有时可能会发送多达 100 个答案,即向服务器发送 100 个发布请求。在我目前的方法中,用户将收到 100 条成功消息,这可能会非常令人困惑,根据经验,完成任务最多可能需要 3 分钟。
有没有办法让我在每个答案负载上传到服务器时显示进度条或加载栏,并在整个任务完成时显示成功消息?
export const uploadAnswers = async (type) => {
getOfflineSavedAnswers(type).then(async answers => {
if (answers && answers.length > 0) {
try {
for (const answer of answers) {
try {
await axios.post('/route/question/create-answer', answer)
.then(res => {
delAnswers()
ts(`Answers successfully submitted!`);
})
.catch(err => {
console.error(err);
te(`Answers submission failed!`)
});
} catch (error) {
te(`Answers submission failed!`)
}
}
} catch (error) {
console.error(error);
te(`Answers submission failed!`)
}
}
});
};
【问题讨论】:
标签: javascript reactjs async-await axios try-catch