我正在尝试获取ng资源查询方法上的内容。如何获取ngResource查询的内容[对象对象]
我厂拥有这样
.factory('factoryName', ['$resource','API_URL', function ($resource,API_URL) {
return $resource(
API_URL+'route1/route2/:userId',{userId: '@_userId'},
{
update: {method: 'PUT'},
query:{method:'GET'}
}
);
}])
和我的控制器看起来像这样
.controller('myCtrl',function($scope,$http,factoryName,userService){
$scope.userId = userService.getUser().userId;
$scope.result =factoryName.query({userId:$scope.userId})
console.log($scope.result)
})
我发现,这是记录[对象对象],同时当我跟踪的响应网络,它执行得很好,并以我想要的结果进行响应。但我的$ scope.result是[对象对象]。我尝试无尽的伎俩来获取[对象对象]的内容,但我不能。
我也曾尝试
.controller('myCtrl',function($scope,$http,factoryName,userService){
$scope.userId = userService.getUser().userId;
factoryName.query({userId:$scope.userId},
function(response){
$scope.result = response
console.log(response)
})
})
甚至不是给我任何东西。
我只是意识到,响应都出现在视图
<div ng-app="myApp">
<div ng-controller="myCtrl">
<h2>{{result.something}}</h2>
</div>
</div>
了,但我不知道为什么它不是在控制台登录正确
谢谢,它会返回:{“$ promise”:{“$$ state”:{“status”:0,“pending”:[[{“promise”:{“$$ state”:{“status”: 0}}},null,null,null]]}},“$ resolved”:false} – kplus
忘记ngResource的性质,它确实使用异步操作,但不公开。你必须提供带有回调的query(),第一个回调是成功的操作,第一个参数是查询数据,第二个回调是不成功操作。这里有一个小提琴给你: https://jsfiddle.net/theuntitled/m7ep1beg/2/ –
谢谢,我做了类似的事情之前,我发现,它显示在视图中,但它不只是记录在控制台 – kplus