複数のリクエストをトリガして、順序を保持し、エラーを無視する必要があります。周りのドキュメントやコードをスカウトした後、次のパターンが出現するJavaScriptプログラマ、最初のタイマーのよう:予期せぬ引数の数を伴うjQuery.when.applyの処理
var requests = [];
for (yadda yadda) {
request.push($.ajax())
}
$.when.apply(null, requests).always(function() {
for (var i = 0; i < arguments.length; i++) {
var result = arguments[i];
// do things
}
})
それはそのように呼ばれたときは、リクエスト内のすべてのDeferredの作り方がある場合にのみ、トリガー延期マスターを作成することを私の理解でありますdone(正常かどうか)。
リクエストに1つの要素しか含まれていない場合、上記のコードは機能しません。その場合、when
は別の方法で動作し、私のalways()コールバックは長さ1の配列を受け取るのではなく、アンパックされた単一の応答オブジェクトを受け取ります。
私はこの問題の解決方法を見ていますが、それは慣用的な(または別のアプローチです)ものはありません。
私は、コールバックが...それは、このユースケースを処理するために、これ以上のエレガントな方法があります –