使用承諾API,如何並行發送兩個異步請求,並將組合結果作爲響應進行解析。Promise API - 結合2個異步調用的結果
var get = function(id){
var res1, res2;
var deferred = $q.defer();
Db.get(id, "abc")
.then(function (d) {
//deferred.resolve(d));
res1 = d;
}, function (e) {
//error
});
Db.get(id, "def")
.then(function (d) {
//deferred.resolve(d));
res2 = d;
}, function (e) {
//error
});
//?????? how to return {res1:res1 , res2: res2}
return deferred.promise;
};
現在,當我調用get()之類
get(123).then(function(d)){
// d= {res1: res1, res2: res2}
},
...
我需要得到的綜合結果所示。如何使用Angular promise API做到這一點?
大答案+1。也感謝您澄清錯誤處理細節,因爲我不確定。如果你有一個時刻,請通知http://stackoverflow.com/questions/16311803/chaining-2-asynchronous-calls-promise-api-to-run-serially,我努力爭取當時的條款不阻止 – bsr 2013-05-01 02:33:26