私はこれに似たコードを持っています:
promise_function().then(()=>{
//do something
return another_promise_fucntion();
}).then(() => {
//do something
return another_promise_function1();
}).then((result) => {
//check if result is valid
if(!result)
//break chain (how to stop calling the next .then functions ?)
else
return another_promise_function2();
}).then(()=>{
//do something
return another_promise_function3();
}).catch((err)=>{
//handle error
});
返された結果が有効でない場合は、次の.then()関数の呼び出しを停止します。
「throw new Error()」を使用しましたが、うまく機能しましたが、それが推奨される方法かどうかはわかりません。
これは、Mozillaが推奨する正しい方法です。詳細については、こちらをご覧ください。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/then#Chaining