我正在按角度順序執行多個ajax調用。我想實現的工作與$.ajax
工作正常,但是當我使用角度實現時,我正在使用$http
作爲服務器請求,它不起作用。我想知道,這兩個都返回承諾對象,然後爲什麼它不能正常工作。在基於數組角色的角度上承諾多個ajax請求
使用$就
shoppingList.split(",").reduce(function(resultPromise, shoppingItem) {
return resultPromise.then(function(result) {
pro = $.ajax('/items/'+shoppingItem);
return pro.then(function(res) {
console.log(result);
result.push(new Item(res.label,res.price));
return result;
});
});
}, $.when([])).then(completeCallback);
見工作小提琴 - JSFiddle
採用了棱角分明的$ HTTP
function fetchDataDayWise(dateRanges,completeCallback) {
return dateRanges.reduce(function(resultPromise, dt) {
return resultPromise.then(function(resultData) {
machinePromise = getData();
return machinePromise.then(function(data) {
if(data && data.length > 0)
{
resultData = resultData.concat(data);
}
console.log(resultData);
return resultData;
});
});
}, $.when([])).then(completeCallback);
}
var dateRanges = [1,2,3,4]
function setData(data) {
console.log("data",arguments);
}
fetchDataDayWise(dateRanges,setData);
您可以在控制檯中看到。在JSFiddle中,您將在Angular plunkr中獲取數組項,並返回對象。我猜這是諾言對象。
任何幫助,將不勝感激。
始終在SO上發佈相關代碼。這不是來自有經驗的用戶的期望。 – Satpal
@Satpal對不起,我只是稍微修改了一下。 –
同意以上 - 我看到這越來越多,並忽略越來越多的問題... –