对象#<resource>没有方法&#39; push&#39; </resource>

时间:2013-11-25 18:45:01

标签: node.js rest angularjs express angular-resource

起初我有这个,但错误Expected response to contain an object but got an array

angular.module('homeModule').factory("TodosFactory", ['$resource', function ($resource) {
return $resource('/api/todos/:todoId', {
    todoId: '@_id'
});
}]);

所以我改为:

angular.module('homeModule').factory("TodosFactory", ['$resource', function ($resource) {
return $resource('/api/todos/:todoId', {
    todoId: '@_id'
}, {'save': {method: 'POST', isArray:true}}); // this line is added
}]);

我正在将项目保存到数据库,并返回对象列表。返回一个JSON数组,但是我收到了这个错误。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

isArray属性适用于请求和响应。请参阅AngularJs $resource use of isArray for both request and response

由于请求不是数组,因此收到错误。您可以将其包装在一个数组中,然后将其拉出服务器端。