この場合、プロミスチェーンをどのように停止する必要がありますか? 最初の条件がtrueの場合にのみ、2番目のコードを実行します。最初のタスクの他にある(「拒否」)拒否 :プロミスチェーンを解除するにはどうすればよいですか?
var p = new Promise((resolve, reject) => {
setTimeout(function() {
resolve(1)
}, 0);
});
p
.then((res) => {
if(true) {
return res + 2
} else {
// do something and break the chain here ???
}
})
.then((res) => {
// executed only when the condition is true
console.log(res)
})
ここでエラーを投げるのは、あなたのユースケースでうまくいくでしょうか? – jas7457
はい、私は知っていますが、それは約束を破ってしまい、その次にヒットしないでしょう。 。それが彼がしようとしていることばかりであれば、これはうまくいくでしょう。 – jas7457