Javascript AngularJS-XX不是一个函数

Javascript AngularJS-XX不是一个函数,javascript,angularjs,ngresource,angularjs-resource,Javascript,Angularjs,Ngresource,Angularjs Resource,在AngularJS中,我有如下控制器: function LoginController($scope, $rootScope, $location, $cookieStore, UserService) { $scope.rememberMe = false; $scope.login = function() { UserService.authenticate($.param({ username: $scope.usernam

在AngularJS中,我有如下控制器:

function LoginController($scope, $rootScope, $location, $cookieStore, UserService) {

    $scope.rememberMe = false;

    $scope.login = function() {
        UserService.authenticate($.param({
            username: $scope.username,
            password: $scope.password
        }), function(authenticationResult) {
            var authToken = authenticationResult.token;
            $rootScope.authToken = authToken;
            if ($scope.rememberMe) {
                $cookieStore.put('authToken', authToken);
            }
            UserService.get(function(user) {
                $rootScope.user = user;
                $location.path("/");
            });
        });
    };

    $scope.register = function() {
        UserService.register($.param({
            username: $scope.username,
            password: $scope.password
        }), function(authenticationResult) {

        });
    };
};
和服务工厂:

var services = angular.module('exampleApp.services', ['ngResource']);

services.factory('UserService', function($resource) {
    return $resource('rest/user/:action', {}, {
        authenticate: {
            method: 'POST',
            params: {
                'action': 'authenticate'
            },
            headers: {
                'Content-Type': 'application/x-www-form-urlencoded'
            }
        }
    }, {
        register: {
            method: 'POST',
            params: {
                'action': 'register'
            },
            headers: {
                'Content-Type': 'application/x-www-form-urlencoded'
            }
        }
    });
});
当我试图在浏览器中达到注册功能时,我得到了
TypeError:UserService.register不是一个函数
我缺少什么


我读过这篇文章:看起来很相似,但我不明白

您所参考的答案(仅限我的答案),与您希望实现的目标大不相同

您的$resource对象格式不正确,自定义$resource方法应该存在于单个对象中,而不是将它们分开

代码

services.factory('UserService', function($resource) {
  return $resource('rest/user/:action', {}, {
    authenticate: {
      method: 'POST',
      params: {
        'action': 'authenticate'
      },
      headers: {
        'Content-Type': 'application/x-www-form-urlencoded'
      }
    },
    register: {
      method: 'POST',
      params: {
        'action': 'register'
      },
      headers: {
        'Content-Type': 'application/x-www-form-urlencoded'
      }
    }
  });
});

@阿拉尼奥很高兴知道。。谢谢:)@Araneo继续,并将答案标记为正确..因为它确实帮助了你。谢谢:)对不起,我在读的时候不能这么做,因为我得等几秒钟,然后我就忘了。