我尝试了这里给出的所有方法,但没有运气。我的服务是:
angular.module('xx')
.factory('Complaints', function($resource) {
return $resource('/api/complaints');
});
我的控制器是:
.controller('ListCtrl', function($scope, $alert, $location, $http, $rootScope,Complaints) {
$scope.complaints= Complaints.query();
console.log($scope.complaints);
console.log(Complaints.query());
});
我不知道什么是错的。这段代码最初工作,但下次出错了。我刚刚在app.js文件中包含了一些引用。这肯定不是问题。
答案 0 :(得分:0)
默认情况下,query
方法需要数据格式的数据,但不知何故,您的服务器将数据作为对象而不是数组进行响应,因此您收到错误。
因此,您需要更改服务器端代码以返回数组而不是对象,或者更改角度代码以期望对象。
要更改角度代码:
angular.module('xx')
.factory('Complaints', function($resource) {
// override query method config
return $resource('/api/complaints', {}, {query: {isArray: false}});
});