問題タブ [q]
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.
javascript - Q.all() の約束が延期された約束を正しく解決しない
サーバー上にオブジェクトを作成するために、POST を複数回呼び出しています。POST は promise でラップされています。promise の配列を作成して Q.all に渡しますが、解決されると、配列内のすべてのオブジェクトが同じ ID を持ち、サーバー上にオブジェクトが 1 つだけ作成されます。
これが私のコードです
結果は、すべて同じ ID を持つオブジェクトを返します。なぜかわからない?誰にも提案はありますか。
javascript - Q promises - スコープはどのように機能しますか?
Q promise のスコープはどのように機能しますか? 私の知る限り、「then」のコールバックは setTimeout のようにウィンドウによって呼び出されます。
この例では (それがどのように機能するかを理解するための単なる例です):
foo のインスタンスにテキストを含めるには、bind を使用しています。
他に方法はありますか?
angularjs - ドロップダウンの初期値を設定する $resource および $q
次のようなデータ サービスがあります。
次に、これらの場所を使用して、ビューにドロップダウンを設定します。
コントローラーのドロップダウンの初期値を次のように設定したい:
これは機能しません。$resource の非同期の性質のためだと思います。まだリストがないため、設定できません。
$q がこれに対処するように設計されていることは知っていますが、プロミスを作成して設定する方法がわかりません
満たされたら
私は $q と $resource のドキュメントを読みましたが、私が行っているように簡単な get を実行し、get promise が満たされた後に関数/アクションを実行する方法の良いコード サンプルをまだ見ていません。
ありがとう。
node.js - Promise をいつ拒否/解決するか
いつ約束を拒否する必要があるかを考えています。このトピックに関するいくつかの質問を見つけましたが、適切な回答が見つかりませんでした。 いつ約束を拒否する必要がありますか?
この記事 http://howtonode.org/6666a4b74d7434144cff717c828be2c3953d46e7/promises は次のように述べています。
- 解決: 成功した Promise は「解決」され、待機中の成功リスナーを呼び出し、接続されている将来の成功リスナーのために解決された値を記憶します。解像度は戻り値に相関します。
- Reject: エラー条件が発生すると、Promise が「拒否」され、待機中のエラー リスナーが呼び出され、接続されている将来のエラー リスナーのために拒否された値が記憶されます。拒否は、スローされた例外に関連しています。
これは原則的なガイドラインですか?例外が発生した場合にのみ約束を拒否するということですか?
しかし、次のような関数の場合
結果を検証せずにチェーンを続行できるように、関数がユーザーを返すことを期待します
ベスト/一般的なプラクティスは何ですか?
javascript - Q - 一連の promise を実行し、DAG でそれらの間の依存関係を定義する
それぞれの出力を他のデータへの入力として使用できる一連のデータを処理したいと思います。
例えば:
これは、が完了すると、その出力が と の両方にa1
送信されることを意味します。これらが完了すると、両方の出力が に送信されます(両方が完了した場合のみ。
、、、およびのすべてと並行して実行される場合があります。また、 と並行して実行される場合があります。これらの間には定義されていないためです。b1
b2
c1
x1
a1
b1
b2
c1
b1
b2
depends
と が完了するc1
とx1
、したがって 5 つすべてが完了すると、5 つすべての出力が返されます。
循環依存関係が定義されていないため、有向非巡回グラフ (DAG) であると仮定します。
Qを使用してこれを実装する方法を知りたいのですが、理由は次のとおりです。
- データの処理はすべて非同期であるため、コールバック、または deferred と promise のいずれかを使用する必要があります。そして私は後者を好みます
- Promise は、グラフのエッジを定義する便利な方法としても機能します。
しかし、私はこれを概念段階を過ぎて取ることができませんでした
(私の質問に必要なポイントを説明するためだけに、このコードはテストされておらず、動作するとは思わないことに注意してください。)
私が知りたいのですが:
- 私はこれを正しく行っていますか?私は
Q
図書館の要点を完全に見逃していますか?または遅延と約束で? 私の主な関心事は
/li>doData
関数にあります:
/li>doBatch
関数を使用すると:全般的
/li>
angularjs - promise then() 関数エラーを返す新しい Angular.js 1.1.5 リソースに別のリクエストが続く
リソース呼び出しで約束を返す最新の Angular.js 1.1.5 を使用しています。これらに依存する別のリクエストが続く複数のリクエストがある場合、どのような実装が正しいでしょうか?
このため、エラーが発生します。
TypeError: オブジェクト # にはメソッド 'then' がありません
template は、リソースを返す次のファクトリです。
node.js - Firebase を使用して配列を返す
Node.js
Firebase を使用するときに Q ライブラリ (または同様のライブラリ、私は部分的ではありません)でデータの配列を返す最適な使用例を見つけようとしています.on("child_added")
。
使用してみましQ.all()
たが、約束が満たされるのを待ってから戻ることはないようです。これは私の現在の例です:
javascript - AngularJS の deferred.resolve()
すべての新しい画像が読み込まれるまで、ng-view の変更を傍受し、「loading div」オーバーレイを読み込む必要があります。
HttpInterceptor で promises コールバックを一時停止しようとしていますが、2 回目には promises を解決できません。
ここに例があります:
globalForTest.resolve(value) を呼び出そうとすると、エラーも何も起こりません。
javascript - Q promise の例を単純化する方法
最初の呼び出しの結果を次の呼び出しに渡す、連続した ajax 呼び出しを行う単純なアプリケーションに取り組んでいました。
もちろん、コールバック地獄には行きたくないので、Promises/A+仕様の例とQ ライブラリを調べます。
必要な結果になるはずの非同期関数を用意しました。しかし、Sequential promise の受け渡しを単純化する方法についての洞察が必要です。
今のところ、promise と deferred オブジェクトを最適に操作する方法についてまだ読んでいます。非常に素朴なコードを許してください。
だから今、私は2つのことを見ています:
- promise の順序付けを単純化する方法 (私の場合のように互いに依存しています)
提案
/li>
よろしくお願いします!