我正在尝试发送多个$http
请求,请求位于.service
:
app.service('servlet', function($http){
var base = "http://myUrl.com" // real url is private
//queryParams for GET request
this.sendGet = function(queryParams){
var promise = $http({method:'GET', url:base, params:queryParams}).then(
(function(response){
return response.data;
});
return promise; // var promise
}
});
调用sendGet()
正常工作并返回promise
但是当我在循环中使用它时:
console.log($scope.items.length) // 5
for(var i =0 ; i<scope.items.length; i++){
//scope.items - query params
console.log(scope.items[i]);
servlet.sendGet(scope.items[i]).then(function(data){
console.log(i);
});
};
日志显示:
object{param1 : 1} //scope.items[i]
object{param2 : 2} //scope.items[i]
然后是console.log(i)
- 在循环中的servlet内部。
[4]5