在 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.js
。 Reference
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"
})
});
这应该会消除所有错误,您应该能够使用其他模块的控制器。
希望对您有所帮助
我在尝试加载某些模块时遇到问题。
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.js
。 Reference
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"
})
});
这应该会消除所有错误,您应该能够使用其他模块的控制器。
希望对您有所帮助