Controller.js:
service.getUsers(params).$promise.then(function(response) {
var data = response;
$scope.users = data.resources;
$scope.totalItems = data.totalResults;
});
Service.js:
return $resource('/Users', {}, {
getUsers: {
method: 'GET',
headers: {'segment' : 'computedSegment'},
isArray: true,
transformResponse: function(data, header){
var wrapped = angular.fromJson(data);
angular.forEach(wrapped.resources, function(item, idx) {
wrapped.resources[idx] = item;
});
var deffered = $q.defer();
deffered.resolve(wrapped);
return deffered.promise;
}
}});
我得到的问题是,虽然请求进入服务器,我收到响应,数据被正确处理,然后“函数永远不会被执行来设置$ scope变量。
有没有人有想法?
答案 0 :(得分:0)
我猜你忘了在getUsers方法之后使用query()方法。而且我认为你不需要在transformResponse方法中使用promise。您可以查看answers。