无法添加第二个 AngularJS 服务工厂

Cannot add second AngularJS Service Factory

我尝试向我的 AngularJS 模块添加 2 个服务。一个应该访问我的员工和一个我的产品,但我得到一个 Unknown provider: EmployeeServiceProvider <- EmployeeService <- BookingController.

所有Javascript-文件都添加到html。

App/Module

var coffeewatchApp = angular.module('coffeewatchApp', [
    'ngRoute',
    'coffeewatchControllers',
    'coffeewatchServices'
]);

//Routing

var coffeewatchControllers = angular.module('coffeewatchControllers', []);
var coffeewatchServices = angular.module('coffeewatchServices', []);

EmployeeService.js

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

var employeeServiceUrlPart = "EmployeeService/";
coffeewatchServices.factory('EmployeeService', ['$resource',
    function($resource){
        return $resource('all/', {}, {
            all:     {method:'GET',url:REST_BASEURL+employeeServiceUrlPart+"all", params:{}, isArray:true}
        });
    }]);

ProductController.js 与 Product

完全相同
var coffeewatchServices = angular.module('coffeewatchServices', ['ngResource']);

var productServiceUrlPart = "ProductService/";
coffeewatchServices.factory('ProductService', ['$resource',
    function($resource){
        return $resource('all/', {}, {
            all: {method:'GET',url:REST_BASEURL+productServiceUrlPart+"all", params:{}, isArray:true}
        });
    }]);

控制器访问两个服务

coffeewatchControllers.controller('BookingController', ['$scope', 'EmployeeService', 'ProductService',
    function ($scope, EmployeeService, ProductService) {
        $scope.employees = EmployeeService.all();
        $scope.products = ProductService.all();
}]);

感谢任何帮助;提前致谢。

EDIT: 我首先实施了 EmployeeService 并且一切正常。 所以我真的不明白为什么添加 ProductService 会杀死我的 EmployeeService。我唯一能想到的是 ProductService 以某种方式 "overwrites" 我的 EmployeeService 因为它是第二个注入的。

在 index.html

中添加的所有 JS 文件
<script src="js/config/app-config.js"></script>
<script src="js/app.js"></script>
<script src="js/controllers/DashboardController.js"></script>
<script src="js/controllers/StatisticController.js"></script>
<script src="js/controllers/BookingController.js"></script>
<script src="js/services/EmployeeService.js"></script>
<script src="js/services/ProductService.js"></script>

EDITEDIT 在查看 this 答案后,我更加困惑为什么我的代码不起作用,但也许其他代码会帮助某人发现差异。

在你的两个控制器文件中,像这样检索模块(删除依赖列表)-

var coffeewatchServices = angular.module('coffeewatchServices');

改为在 ngResource 中添加依赖项,同时在 App/Module 中声明 -

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

您的模块将在 ProductController 的第二次调用中重新创建,因此将覆盖之前的模块和服务定义。