我正在尝试访问我的资源数组的特定位置,这些位置来自查询,但在我的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。
我做错了什么?
答案 0 :(得分:3)
那是因为您正在处理异步数据。在您尚未加载数据的时刻,您在console.log
的回调之前执行了query
。您编写的代码(回调除外)是同步的。
编辑:这是使用$http
加载简单数据的示例。我建议将$http
用于简单任务,因为$resource
更多是关于CRUD操作。我个人从未使用$resource
。