从AngularJS中的外部文件链接模块

时间:2017-04-20 09:56:19

标签: javascript angularjs

我正在处理新项目,我想使用两个放在不同文件中的模块。不幸的是,当我尝试在我的根目录中声明第二个时,我收到错误

Uncaught Error: [$injector:modulerr]

所以,这是我的根文件,app.js:

var beerMe = angular.module("beerMe", ["admin", "ngRoute"])

.config(["$routeProvider", function($routeProvider) {
    $routeProvider

    .when("/home", {
        templateUrl: "../views/home/home.html",
        controller: "MyCtrl"
    })
    .otherwise({
        redirectTo: "/home"
    })
}])

.controller("MyCtrl", ["$scope", function($scope) {

}]);

第二个,我想绑定,admin.js:

var admin = angular.module("admin", ["firebase", "ngRoute"]);

admin.config(["$routeProvider", function($routeProvider) {
    $routeProvider
        .when("/", {
        templateUrl: "views/add.html",
        controller: "AdminCtrl"
    }).when ("/edit", {
        templateUrl: "views/edit.html",
        controller: "AdminCtrl"
    }).otherwise({
        redirectTo: "/"
    })
}]);

admin.controller("AdminCtrl", ["$scope", "$firebaseArray", function($scope, $firebaseArray) {
   // my code goes here

}]);

在admin.js中我连接到firebase,我希望能够访问我的模块" beerMe"中的所有数据。

如果你能帮助我找出绑定这两者的问题,我将非常感激。

2 个答案:

答案 0 :(得分:0)

更改var admin = angular.module("admin", ["firebase", "ngRoute"]);

var admin = angular.module("admin");

并像这样更改root模块

var beerMe = angular.module("beerMe", ["admin", "ngRoute", "firebase"])

答案 1 :(得分:0)

看起来你的依赖是错误的方式。将admin作为beerMe的依赖关系将使beerMe模块中的admin模块可用。

如果您希望admin模块能够从beerMe模块内部访问数据,那么beerMe应该是admin的依赖项。

var admin = angular.module('admin', ['firebase', 'ngRoute', 'beerMe']);