我收到了这个错误:
“Controller:MainCtrl应检索用户列表并分配给scope.users FAILED TypeError:'undefined'不是函数(评估'Users.findAll()') at /Users/John/NetBeansProjects/ClearsoftDemo/app/scripts/controllers.js:21 在调用(/Users/John/NetBeansProjects/ClearsoftDemo/bower_components/angular/angular.js:3869)“
这是控制器代码:
.controller('MainCtrl', function ($scope, Users) {
$scope.users = Users.findAll();
$scope.sortField = 'lastName';
$scope.reverseSort = true;
})
这是服务代码:
service.factory('Users', function ($resource) {
return $resource('http://localhost:8080/ClearsoftDemoBackend/webresources/clearsoft.demo.users', {}, {
findAll: {method: 'GET', isArray: true}
});
});
这是测试代码:
beforeEach(inject(function ($controller, $rootScope) {
var users = {query: function () {
return [{}];
}};
scope = $rootScope.$new();
MainCtrl = $controller('MainCtrl', {
$scope: scope,
Users: users
});
}));
答案 0 :(得分:0)
这是问题的一部分:您的模拟不会声明findAll
方法。请注意,您的Users
资源声明findAll
是另一种方法 - 您也应该这样做。