2つのオブジェクトがObjectA
ありObjectB
ます。ObjectB
終わってから保存したいObjectA
のですが、両方の結果をまとめた約束を返したいです。
これが、必要な機能を表示するための最初のハックです。この関数は正常に機能しますが、それは醜いだけで、確かにもっと良い方法があります。
関数saveObjectA
とsaveObjectB
両方が$.post()
promiseを返します。
saveAAndBSequentially: function () {
var dfd = $.Deferred();
saveObjectA().done(function () {
saveObjectB().done(function () {
dfd.resolve();
}).fail(function () {
dfd.reject();
});
}).fail(function () {
dfd.reject();
});
return dfd.promise();
}
トリガーするためにコールバックを使用$.when
して追加するだけですが、遅延はまだ存在しないため、すぐに使用できるとは思いません。done
saveObjectA
saveObjectB
saveObjectB
$.when
これをよりエレガントな方法で解決する方法についてのアイデアは大歓迎です!