Nesnelerim var ve bazı istekleri yürütmek istiyorum - her nesne için bir tane.angularJS - Sorgu tek tek nasıl yapılır?
$ http-service, uyumsuz modda isteği yürütdüğü için nasıl elde edilir?
zaman uyumsuz gibi/
Nesnelerim var ve bazı istekleri yürütmek istiyorum - her nesne için bir tane.angularJS - Sorgu tek tek nasıl yapılır?
$ http-service, uyumsuz modda isteği yürütdüğü için nasıl elde edilir?
zaman uyumsuz gibi/
Sen $ http callback'inde sonraki isteği çağırabilir C# bekliyor. Böyle şey:
function sendRequestList(objectList) {
if (objectList.length > 0) {
var currentObject = objectList.pop();
$http.get(/* request params here */)
.then(
function() {
sendRequestList(objectList);
},
function() {
sendRequestList(objectList);
}
);
}
}
Ancak, istediğin bu şekilde elde edebilirim bir yol bilmiyorum. Bu yardımın umarım.
A +
gönderilmesi gerekiyor – Monochromie
tüm istekleri devam etmeden önce bitirilmesi için isterseniz, bir söz üretmek için en açısal $q servisini kullanmak ve her istek yapılır sadece bir sonuç geri dönebilirler. birileri tarafından yapılan bu örnekte olduğu gibi zinciri sizin istek için
// all of this in a controller injecting $q
function fetchAll(objects) {
var deferred = $q.defer();
var done = 0;
var results = {};
for(var i=0; i < objects.length - 1; i++) {
// a trick to avoid every iteration to share same i value
(function(index) {
$http.get(/* request params here */)
.then(
function(data) {
results[index] = data;
// or results[object.anyProperty] = data;
done++;
// ensure all calls are successful
if (done === objects.length) {
deferred.resolve();
}
},
function() {
deferred.reject();
}
);
})(i);
}
return deferred.promise;
}
// and call it like this
fetchAll(objects)
.then(function success(result) {
// continue your business
}, function error(result) {
// handle error
});
kullanım vaat: http://jsfiddle.net/jsengel/0ryvkvph/ Sen Evet kodunuzu ya da ne denedi ... – xelilof
, en yakın çözüm. – inspired