如何修复$ resource:badcfg在我的情况下?

时间:2014-04-23 10:35:29

标签: angularjs angular-resource

这是我的js代码

var MYModule = angular.module('myApp', ['ngRoute', 'myAppServices'])
    .directive('loading',   ['$http', loadingDirective])
    .config(myRouter);

angular.module('myAppServices', ['ngResource'])
    .factory('Users', function($resource) {
        return $resource('/MY/system/users');
    });

function UsersCtrl($scope, Users) {
    $scope.users = Users.query();
}

在我的html代码中使用此

<div ng-repeat="item in users">Hello</div>

虽然我在/ MY / system / users的服务器代码中收到请求但是浏览器抛出了错误

Error: [$resource:badcfg] http://errors.angularjs.org/1.2.16/$resource/badcfg?p0=array&p1=object
    at Error (native)

1 个答案:

答案 0 :(得分:8)

请参阅此错误文档:https://docs.angularjs.org/error/$resource/badcfg

当角度期望数组或对象,并且接收相反时,会发生这种情况。期望从端点返回一个数组,而query()期望一个对象。

此外,您应该将上面的get()语法更改为:

query()

这是因为angular正在逐步取消通过Users.query().then(function(result){ $scope.users = result; }); 返回的承诺的自动处理。