問題タブ [bluebird]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
63932 参照

javascript - then と catch で promise をチェーンする

bluebird Promise ライブラリを使用しています。promise をチェーンして、特定の promise エラーをキャッチしたいと思います。これが私がやっていることです:

しかし、 によってエラーがスローされた場合、 2 番目の と同様にgetSession2 つが呼び出されます。最初の でエラーの伝播を停止したいので、2 番目はスローされたときにのみ呼び出され、2 番目は成功したときに呼び出されます。どうする?catchthencatchcatchgetUserthengetUser

0 投票する
13 に答える
140131 参照

javascript - promise のループを記述する正しい方法。

次のプロミス呼び出しとチェーンされたlogger.log(res)が反復を通じて同期的に実行されることを確認するためにループを正しく構築する方法は? (青い鳥)

次の方法を試しました(http://blog.victorquinn.com/javascript-promise-while-loopの方法)

動作しているように見えますが、 logger.log(res);を呼び出す順序が保証されているとは思いません。

助言がありますか?

0 投票する
1 に答える
1015 参照

javascript - Node.js Bluebird Promise が「循環構造を JSON に変換中」と文句を言う

発信 API 呼び出しを行うために、bluebird の promise オブジェクトにラップされた restler を使用しています。しかし、私はで取得してPossibly unhandled TypeError: Converting circular structure to JSONnode_modules/bluebird/js/main/promise.jsます。

これは、JSON.stringify がなくても発生します。promise.js のレベルで起こっています。

これについて何ができますか?

更新:エラーオブジェクトのキーが役立つ場合は、次のとおりです。

0 投票する
1 に答える
1230 参照

node.js - array.forEach で、.push の前に MongoDB/Mongoose .findOne を約束する方法は?

bluebird の readMe の例に目を通しましたが、非同期コードを実装/変換して .then..

ここには多数の ifStatements がありますが、要点は、 をループしているときに、 がデータベース (findOne) に存在するtoArray場合は、それを変数に割り当てて、新しい ( element.post & .save) db doc.

結果として .save .. の後に findOne を実行する現在の非同期コードは次のとおりですが、前に実行する必要があります。

0 投票する
1 に答える
3159 参照

javascript - Bluebird.js カスタム エラー キャッチ関数は、最初の約束には適用されませんか?

Bluebird.js のカスタム エラー ハンドラを使用しようとしています。

以下の例では、MyCustomError ハンドラーではなく、catch-all ハンドラーが呼び出されますが、拒否をthen関数に移動した (そして firstPromise を解決した...) と、MyCustomError ハンドラーが呼び出されます。何故ですか?何か間違っていますか?ありがとう。