我真的很难在Javasctipt中使用异步功能。在这里,我有一个异步函数,该函数调用api并保存结果。它工作正常,但我现在需要做一个循环,因此将调用此api,直到满足特定条件为止。我知道这需要使用await完成,但我无法弄清楚到底是什么。
我尝试设置if语句,然后执行类似“如果不满足条件”的操作setTimeout(getResults()); (重复对异步功能的调用)。
async getResults() {
try {
const res = await axios(`https://blablabla`);
this.result = res.data.info;
} catch (error) {
alert(error);
}
}
答案 0 :(得分:2)
async getResults() {
try {
let i = 100;
while(i-->=0){
const res = await axios(`https://blablabla`);
this.result = res.data.info;
if(this.result == 'some process finished')
{
return this.result;
}
//else retry
}
} catch (error) {
alert(error);
}
只需使用一些周期,例如while(true)。并重复循环直到满足您的条件