如何使用控制器中的angular.forEach循环遍历返回的Resource对象数据

时间:2016-10-27 03:14:09

标签: javascript angularjs arrays object foreach

我遇到了类似的scenario,但我的尝试失败了,因为始终返回undefined并在控制台出错后继续收到错误。

使用angular $ resource工厂从openweathermap API检索数据。我知道我可以使用ng-repeat来定位并获取视图中所需的一些数据,但我还想在控制器中分解这些数据并访问一些键和值。当我Run变量保存从api检索的数据时,我在控制台中获得了一个Resource对象。

如何循环浏览此对象以检索我需要的数据。它基本上是数组中对象内的对象。在视图中,ng-repeat确实能获得这些数据,但在控制器中我不知道如何检索它。例如,如果我console.log($scope.weatherResult)console.log($scope.weatherResult.city),控制台中的结果始终未定义。

现在我要检索的数据是在列表数组中 - 两天的数据,但第一个对象列表[0] .temp有温度数字,我想计算这些数字的总和并除以得到平均值,所以我可以将它存储在控制器中的另一个变量中,并在视图中输出。

我不确定我是否在这里采取了很长的路线,但我之前一直处于类似情况但是却在视图中使用ng-repeat设法逃脱了它。我需要学习如何做到这一点。

是否可以使用console.log($scope.weatherResult.list)函数遍历资源对象并获取临时对象中的数据?我附上了一张图片供参考。我仍在学习并获得JavaScript和角度的经验。

Angular Resource loop

1 个答案:

答案 0 :(得分:0)

$scope.temp = []
angular.forEach(list[0].temp, function(value,key){
  $scope.temp.push(value);
})

看看这对你有帮助。