Angularjs angular.forEach和loader show中的嵌套$http调用
我试图显示加载器,直到所有的后调用,直到第4级尚未完成。 代码就像Angularjs angular.forEach和loader show中的嵌套$http调用,angularjs,ajax,Angularjs,Ajax,我试图显示加载器,直到所有的后调用,直到第4级尚未完成。 代码就像 angular.forEach(level1, function(value,key){ $http({ type : POST, data : value }).then(function(success){ angular.forEach(level2,function(value2,key2){ $http({ type : POST,
angular.forEach(level1, function(value,key){
$http({
type : POST,
data : value
}).then(function(success){
angular.forEach(level2,function(value2,key2){
$http({
type : POST,
data : { success, value2}
}).then(function(success){
.. Till level 4
},function(error){});
});
},function(error){});
});
如何才能等到完成执行才应该完成级别4。每个级别都有自己的角度,forEach()使用$q.all()等待特定级别的所有承诺完成
var promises = [];
var level =1;
angular.forEach(level1, function(value,key){
var promise = $http({
type : POST,
data : value})
promises.push(promise);
})
//inject the $q libary
$q.all(promises).then(function(){
level = 2;
promises = [];
angular.forEach(level2, function(value,key){
var promise = $http({
type : POST,
data : value})
promises.push(promise);
})
})
//冲洗并重复,直到第4级,但在这里,我有最后一次成功调用对当前POST数据的依赖性,以及下一次成功调用中当前成功数据的引用。。我不能像你说的那样使用不同的函数和$q.all(承诺)。