私はasync関数からステータスを取得したいが、それは常に未定義のステータスを返し、戻りステータスを含む関数に行く。setInterval関数からどのように値を返すことができますか?
main.js
let status = addData(firstname, lastname, age, sex);
console.log(status);
data.js
static async addData(firstname, lastname, age, sex) {
try {
let txdata = await data.dataentry(firstname, lastname, age, sex);
let count = 0;
let intervalId = setInterval(async() => {
let status = await data.entryStatus(txdata);
logger.info("status %o", status);
if (status = true) {
clearInterval(intervalId);
return status;
} else {
count++;
if (count > 4) {
clearInterval(intervalId);
throw createError();
}
}
}, 500);
} catch (err) {
throw createError();
}
}
条件チェックではなく、割り当てがあります。** if **ブロック – Damask
[非同期呼び出しからの応答を返すにはどうすればよいですか?](https://stackoverflow.com/questions/14220321/how- do-i-return-as-asynchronous呼び出し) –