Javascript AngularJS拥有自己的工厂和资源

Javascript AngularJS拥有自己的工厂和资源,javascript,angularjs,Javascript,Angularjs,我已经创建了自己的LoggerService,但如果我使用它,会出现错误: FOrder.query is not a function 如果我删除了控制器中的所有LoggerService调用,那么一切正常,为什么我不能使用LoggerService? services.js angular.module('GSAdmin.services', ['ngResource']) .factory('FOrder', ['$resource', function($resource) {

我已经创建了自己的LoggerService,但如果我使用它,会出现错误:

FOrder.query is not a function
如果我删除了控制器中的所有LoggerService调用,那么一切正常,为什么我不能使用LoggerService? services.js

angular.module('GSAdmin.services', ['ngResource'])
    .factory('FOrder', ['$resource', function($resource) {
        return $resource('/api/order/:orderId');
    }])
   .service('LoggerService', [function(){
        var _logList = [];
        this.getLast = function(){
            return _logList[_logList.length-1];
        };
        this.getLog = function(){
            return _logList;
        };
        this.log = function(text) {
           _logList.push(text);
        };
}])    
controller.js

    .controller('OrderController', ['$scope', 'FOrder', 'LoggerService',
        function($scope, FOrder, LoggerService) {
            FOrder.query(function(data){
                 $scope.orders = data;
        });

        $scope.log = LoggerService.getLog();
        LoggerService.log('Begin editing order #' + field.id);

    }]);
.controller('OrderController',['$scope','FOrder','LoggerService',函数($scope,FOrder,LoggerService){
查询(函数(数据){
$scope.orders=数据;
});
$scope.log=LoggerService.getLog();
LoggerService.log('开始编辑顺序#'+字段.id);

}问题出在'FOrder'、'LoggerService',我不知道为什么重要,但当我切换到'LoggerService'、'FOrder'时,一切都很好。

看起来你的服务定义末尾有一个额外的结束大括号。这是错误的帖子剪切。我解决了问题。不,请不要看大括号。我剪切了一些不需要的代码and在大括号中出错。如果我真的错过了大括号,控制台日志将对此进行记录。请查看此处,否则就不会再有错误,您可以将所有代码添加到此bin中,以帮助我们找出错误所在
.controller('OrderController', ['$scope', 'FOrder', 'LoggerService',      function($scope, FOrder, LoggerService) {
            FOrder.query(function(data){
                 $scope.orders = data;
        });

        $scope.log = LoggerService.getLog();
        LoggerService.log('Begin editing order #' + field.id);
} <-- **you missed that bracket**
    ]);