了解控制器和模块angularJs [重复]
Posted
技术标签:
【中文标题】了解控制器和模块angularJs [重复]【英文标题】:understanding controllers and modules angularJs [duplicate] 【发布时间】:2015-04-16 14:19:40 【问题描述】:我在 app.js 中有这段代码,并且工作正常。我想将每个控制器放在不同的文件中,但如果将控制器放在其他文件中。我收到了消息:Argument 'visorController' is not a function, got undefined
angular.module('appVisorMapa', [
'ngCookies', // Cookies
'ui.bootstrap', // AngularUI Botstrap
'ui.router', // Routing
'ngRoute' // Routing
])
.config(function($stateProvider, $urlRouterProvider)
$urlRouterProvider.otherwise("/login");
$stateProvider
.state("/login",
url: "/login",
templateUrl: "views/login.html",
controller: "loginCtrl"
)
.state("/dashboard",
url: "/dashboard",
templateUrl: "views/dashboard.html",
controller: "visorController"
)
)
.controller('visorController', function($scope)
console.log("controller it's Ok");
)
这是我将控制器放在其他文件中的方式。我知道这是错误的,但我不明白如何声明它。我介意我为什么需要制作一个新模块?
angular.module('visor',[])
.controller('visorController', function($scope)
console.log("controller it's Ok");
);
我将新文件添加到我的 index.html 但不起作用。 我不明白如何在单独的文件中声明控制器。为什么不认识我的控制器或制作它的正确方法是什么。 我对 angujarJs 如何组织模块和控制器感到困惑。 提前致谢。
【问题讨论】:
【参考方案1】:在这两个文件中,您使用了两个不同的模块名称 angular.module('visor',[])
和 angular.module('appVisorMapa', [])
由于都属于同一个模块,所以必须使用getter来获取上一个模块。
angular.module('appVisorMapa')
.controller('visorController', function($scope)
console.log("controller it's Ok");
);
【讨论】:
以上是关于了解控制器和模块angularJs [重复]的主要内容,如果未能解决你的问题,请参考以下文章