問題タブ [rsvp-promise]

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 投票する
1 に答える
2087 参照

ember.js - RSVP promise を連鎖させ、元の拒否/成功関数を返す方法は?

ajax 呼び出しを単純な promise としてラップできる単純な rsvp ヘルパーがあります。

これはうまく機能し、期待どおりに機能します。問題は、この低レベルのものを最初にラップする別の約束を必要とするコードがある場合です。

私のemberコントローラーでは、これを行うかもしれません

私の予定モデルでは、「削除」のためにこれを行っています

現在、コントローラーは常に「失敗」状態になります (ajax メソッドが 204 を返し、成功した場合でも)。上記のように、コントローラーがモデルを「thenable」として呼び出すことができるようにするには、モデルでこの remove メソッドから「チェーンされた約束」を返すにはどうすればよいですか?

0 投票する
2 に答える
262 参照

javascript - 定義済み関数はその未定義を主張します

2 つの関数を変数として定義する単純な小さなプログラムがあります。これらの関数はどちらもRSVP Promisesを返すため、以下で行ったようにチェーン化できます。私はこのパターンをよく使用しますが、この場合は狂気に陥っています...

私のデバッグ ステートメントは、2 つの関数が実際に定義されていることを明確に示していますが、それらを実行すると、未処理の例外が発生します。

TypeError: undefined は関数ではありません

私が私の心を失うのを助けてください。あらゆる提案を歓迎します。


いくつかの追加のコンテキストについては、次の定義がありopChownます。


ノードの「uncaughtException」イベントでスタックトレースが実際に利用可能であるという@bergiの優れたポインターに基づいてopChown、関数自体ではなく関数内にある問題を明確に示しているスタックトレースを次に示します。

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

javascript - Javascript 関数を同期的に実行するようにしてください

次のコード スニペットに問題があります。私の init メソッドは、initializeMapp() と geoListen() を実行する前に、getLocation() 関数を実行して完了する必要があります。リソースとしてリンクされた rsvp.js がありますが、実装方法がよくわかりません。jQuery の $when.done メソッドも試しました。どんな助けでも大歓迎です。

jQuery メソッド:

出欠確認方法:

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

javascript - promise を Sync 関数にラップする

通常、同期動作が非同期動作よりも適切なノード CLI を作成しています。次の規則を活用できるようにしたいと考えています。

たとえば、RSVP promise の実装を使用して、シェル スクリプトを呼び出すための次の非同期関数を作成しました。

これは機能します。今、同期的に作成したいと思います:

私がうまくいくと思ったのshellSyncは:

残念ながら、これは実行されるだけで、戻ることはありません。while ループの代わりに、ポーリング間隔を実装して条件ステートメントを実行することも考えられます。

もちろん、while ループを削除すると、関数はすぐに返されます (まだ満たされていない約束があります)。そこで、while ループの「待機」機能と、実装されたポーリング頻度を組み合わせようとしました。

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

ember.js - Ember.RSVP.All エラー配列メソッドには配列を指定する必要があります

Discussion.emberjs.com からの相互投稿

モデルを保存しようとしていますが、保存が成功すると、初期モデルに関連するいくつかの追加モデルが保存されます。これらは標準入力フィールドにあり、ED にバインドする方法がわからない/わからないため、標準の jQuery セレクターを使用して入力を見つけ、モデルを保存しています。すべてのモデルは適切に保存されていますが、エラーのためEmber.RSVP.allREJECTコールバックが実行されていArray Methods must be provided an Arrayます。配列をどこに提供する必要があるのか​​ 正確にはわかりません...

途中でさまざまな要素を調べましたがvar promises、期待どおりの約束の配列です。私が考えることができる唯一のことはresults、解決コールバックに渡される値が配列であるはずですか? Ember.A()その場合、単に渡すか、または渡す以外に配列にする方法がわかりません[]

これが私のコントローラーの関連コードです。

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

javascript - Ember Data belongsTo async relationship omitted from createRecord() save() serialization

Edit 11/16/14: Version Information


I'm beating my head against a wall trying to do something that I think should be fairly straightforward with ember and ember-data, but I haven't had any luck so far.

Essentially, I want to use server data to populate a <select> dropdown menu. When the form is submitted, a model should be created based on the data the user chooses to select. The model is then saved with ember data and forwarded to the server with the following format:

The problem is, the typeId and versionId are left out when the model relationship is defined as async like so:

The part that is confusing me, and probably where my mistakes lie, is the controller:

When async is set to false, ember handles createRecord().save() POST requests correctly.

When async is true, ember handles GET requests perfectly with multiple requests, but does NOT add the belongsTo relationships to the file JSON during createRecord().save(). Only the basic properties are serialized:

I realize this question has been asked before but I have not found a satisfactory answer thus far and I have not found anything that suits my needs. So, how do I get the belongsTo relationship to serialize properly?

Just to be sure that everything is here, I will add the custom serialization I have so far:

And a select:

If necessary I will append the other routes and controllers (FilesRoute, FilesController, VersionsRoute, TypesRoute)

EDIT 11/16/14

I have a working solution (hack?) that I found based on information in two relevant threads:

1) How should async belongsTo relationships be serialized?

2) Does async belongsTo support related model assignment?

Essentially, all I had to do was move the Ember.RSVP.all() to after a get() on the properties:

So I needed to get() the properties that were belongsTo relationships before I save the model. I don't know is whether this is a bug or not. Maybe someone with more knowledge about emberjs can help shed some light on that.

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

javascript - promise を使用して複数のファイルを非同期で読み取り、次に進む方法

私はプロミスが初めてで、rsvp実装を使用しています。

ファイルのリストを非同期で読み取り、すべてのファイルが読み取られたときにのみ別のタスクに進みたい。

1 つのファイルを読み取り、次のタスクにチェーンするための基本的な構造まで取得しました。

私はこのようなことをしたい:

ドキュメントでプロミスの配列とプロミスハッシュを見てきましたが、どれが最も関連性が高いか、またはそれらの使用方法がわかりません。それらを理解するには、上記の問題のコンテキストでそれらを使用する例が必要です。