私はasyncとawaitで滝を実装したいと思います。非同期で待機している滝
私は、主な目的は、上記の非同期のいずれかがエラーで拒否した場合、私は非同期関数を呼び出したいしたいんです
にいくつかの手を試してみましたthisを通り抜けました。
var cont = 1;
function signin(){
console.log(cont);
// i am doing some async
return new Promise((a,b)=>{
if((++cont) === 4){
setTimeout(1000*cont,b,'ab');
} else {
setTimeout(1000*cont,a,'ab');
}
})
}
async function main() {
try {
await signin;
await signin;
await signin;
await signin;
await signin;
await signin;
await signin;
return signin();
} catch(er){
return er;
}
}
main()
上記の場合、期待どおりに機能しません。 は私の予想出力出力は、第四の後
1
2
3
4
何であるか、それはすべての方法を破る必要があります。サインインしようとする試みの残りの部分を呼び出すべきではありません。
すべてのサインインはシリーズで実行する必要があります。滝のように。
助けが必要ですか?あなたが変更する必要が
Shouldn」あなたの主な機能の中で 'signin();を待っているだけです。 –
なぜhttps://stackoverflow.com/a/40593103/1503495はそれらの関数を '呼び出し 'ませんか?申し訳ありませんが、愚かな場合、私はちょうど、非同期と待って始めた。 – codeofnode
でも 'await signin(); 'では1にはなりません。 – codeofnode