function uploadLogs()
が拒否された場合、私は拒絶反応が泡立ち、function reject(reason)
によって処理されることを期待していますが、それはしません。何故なの?なぜ拒絶反応は泡立ちませんか?
function uploadLogs()
ため拒否ハンドラは、拒絶反応を処理します。
return EventCollector.persist().then(function persistResolve() {
return EventCollector.uploadLogs().then(function uploadLogsResolve() {
return closeApp();
}, function rejectionHandler() {
console.log("this rejection handler handles the event")
});
}, function reject(reason) {
return closeApp();
});
しかし、私は拒否ハンドラを削除し、バブルアップに拒絶反応を期待してpersist()
の拒否ハンドラによって処理されている場合、それはいくつかの理由で」doesnのt。
return EventCollector.persist().then(function persistResolve() {
return EventCollector.uploadLogs().then(function uploadLogsResolve() {
return closeApp();
});
}, function reject(reason) {
console.log("rejection is not handled when uploadLogs() fails");
return closeApp();
});
この方法では、プロミスチェーンと拒否バブリングはうまくいかないでしょうか?
あなたは単に失敗するという文脈より多くの文脈を与えることができますか? rejectLog関数は、uploadLogs()から返される約束が拒否されると呼び出されます。 – M22an