手动访问资源数组的元素不返回任何内容

时间:2015-12-19 16:52:35

标签: angularjs

我正在尝试访问我的资源数组的特定位置,这些位置来自查询,但在我的console.log中却没有出现。

$scope.a = [];
var resourceGet = $resource('myurl');
$scope.a = resourceGet.query(function(data){
      return data;
}, function(error){
      console.log(error);
});
console.log($scope.a[1]);

控制台上没有任何内容。 但是,我可以使用ng-repeat显示$ scope.a。

我做错了什么?

1 个答案:

答案 0 :(得分:3)

那是因为您正在处理异步数据。在您尚未加载数据的时刻,您在console.log的回调之前执行了query。您编写的代码(回调除外)是同步的。

编辑:这是使用$http加载简单数据的示例。我建议将$http用于简单任务,因为$resource更多是关于CRUD操作。我个人从未使用$resource

http://codepen.io/anon/pen/zrqbxj?editors=101