0
我尝试整理foreach循环后得到的所有数据,但不知何故总是[]AngularJS等待foreach中的所有异步调用完成?
$scope.temp = [];
angular.forEach(seasonStageIds, function (seasonStageId, index) {
playerService.getPlayerProfile(seasonStageId, $stateParams.params.playerSename).then(function (data) {
playerService.getPlayerPositionPerSeason(seasonStageId, data.data.Id).then(function (data) {
console.log(data);
_.chain(data)
.groupBy('Position')
.map(function (value, key) {
var goals = _.reduce(value, function (memo, num) {
return memo + num.Goals;
}, 0);
var apps = _.reduce(value, function (memo, num) {
return memo + num.Apps;
}, 0);
var assists = _.reduce(value, function (memo, num) {
return memo + num.Assist;
}, 0);
var ratings = _.reduce(value, function (memo, num) {
return memo + num.Rating;
}, 0);
var position = {
Position: key,
Apps: apps,
Assists: assists,
Ratings: ratings,
Goals: goals
};
console.log(position); >> correct data
$scope.temp.push(position);
});
});
});
});
$q.all($scope.temp).then(function (data) {
console.log(data); >> show []
})
我做了什么错? 谢谢大家。
感谢您的帮助。看起来不错。 –
https://jsfiddle.net/HB7LU/19678/不要在你的小提琴中使用'http'外部... –