在 Angularjs 中加载模块

Loading modules in Angularjs

我在尝试加载某些模块时遇到问题。

controller1.js:

angular.module('LPC')
   .controller('lista_peliculas_controller', ['$scope', function($scope) {
       $scope.hola="hola peliculas";
   }]);

app.js

var app = angular.module('mis_peliculas', []);

app.config(function($routeProvider){
    $routeProvider
        .when("/pagina_principal",{
            templateUrl: "views/pagina_principal.html",
            controller: "lista_peliculas_controller"
        })
        .when("/lista_peliculas",{
            templateUrl: "views/lista_peliculas.html",
            controller: "lista_peliculas_controller"
        })
        .when("/lista_series",{
            templateUrl: "views/lista_series.html",
            controller: "lista_series_controller"
        })
        .otherwise({
            redirectTo: "/pagina_principal"
        })
});

控制台说喷油器有问题。 你能找到错误吗?

您必须添加 angular-route.jsReference

The ngRoute module provides routing and deeplinking services and directives for AngularJS apps.

你是怎么解决的?

var app = angular.module('mis_peliculas', ['ngRoute','LPC']);

angular.module('LPC', [])

没有完整的错误日志,我无法更精确,但我认为注入错误可能与您的模块未被实例化有关。

努力改变

angular.module('LPC') //here you get a reference to a module, that could cause your error

angular.module('LPC', []) //here you instantiate a module

更新您的代码以使用正确的模块名称:

angular.module('mis_peliculas')
   .controller('lista_peliculas_controller', ['$scope', function($scope) {
       $scope.hola="hola peliculas";
   }]);

如果你想使用单独的模块,你需要先初始化它,然后将它注入你的主模块

angular.module('LPC',[])
   .controller('lista_peliculas_controller', ['$scope', function($scope) {
       $scope.hola="hola peliculas";
   }]);

var app = angular.module('mis_peliculas', ['LPC']);

我假设你的路由已经设置正确。

您需要将 'LPC' 模块传递给您的应用程序 'mis_peliculas' 模块,因为它使用 'LPC' 模块中的 'lista_peliculas_controller' 控制器。

试试这个代码

angular.module('LPC',[])
   .controller('lista_peliculas_controller', ['$scope', function($scope) {
       $scope.hola="hola peliculas";
   }]);

这应该是您的 controller1.js 并且应该在您定义应用程序之前定义。现在 app.js 应该看起来像

var app = angular.module('mis_peliculas', ['LPC']);

    app.config(function($routeProvider){
        $routeProvider
            .when("/pagina_principal",{
                templateUrl: "views/pagina_principal.html",
                controller: "lista_peliculas_controller"
            })
            .when("/lista_peliculas",{
                templateUrl: "views/lista_peliculas.html",
                controller: "lista_peliculas_controller"
            })
            .when("/lista_series",{
                templateUrl: "views/lista_series.html",
                controller: "lista_series_controller"
            })
            .otherwise({
                redirectTo: "/pagina_principal"
            })
    });

这应该会消除所有错误,您应该能够使用其他模块的控制器。

希望对您有所帮助