【发布时间】:2015-06-15 15:54:47
【问题描述】:
$scope.checkwithfor = function(evlappsub){
if( evlappsub != "" && typeof evlappsub !="undefined"){
var s = serviceDomain + '/catanalysisdb/' + evlappsub;
$http.get(s).success(function(data3){
$scope.chartscore.name = data3.keyattributes.appName;
$scope.chartscore.y = (data3.keyattributes.totalAffinity * -1);
$scope.chartscoreval.push($scope.chartscore);
});
}
}
var serviceDomain = "url";
if(evaluation_id !== ''){
$http.get(serviceDomain + '/catanalysisdb/' + evaluation_id).success(function(data) {
var evl_id = data.form.mainFields[8].fieldTypeVal;
for(var i=0;i<evl_id.length;i++){
var evljsonsum_ib = evl_id[i].value;
evlappsub = "cat_sub_key_val_"+evljsonsum_ib.split("_")[1];
$scope.checkwithfor(evlappsub);
}
});
}
- $scope.chartcoreval.push : 将对象推入数组时,但它只包含最后一个对象。
- $scope.checkwithfor : 在我得到 get 方法循环的成功结果之前完成。
【问题讨论】:
-
您不能将同步循环与异步代码一起使用并期望它能够正常工作。发出一个请求,一次发送所有值并让服务器返回一个响应不是更有意义吗?
标签: javascript angularjs http for-loop get