我在RequireJS
旁边使用AngularJS
,我想给身体一个控制器。
最重要的元素是nav
和.container
。
现在,.container
会随路径自动更改,但我想给导航器一个控制器,以便我可以更改当前的活动选项卡。然而,我不明白的是如何给nav
一个控制器,因为它是一个静态元素,并且不会在路由旁边加载并在异步脚本(Angular等等)之前加载。 ..)已加载,因此我无法使用ng-controller指令。
答案 0 :(得分:0)
一种方法是在整个html的顶部设置一个单独的控制器,就在ng-app下面或旁边。这样你就可以控制应用程序的静态部分。
类似的东西:
<html ng-app="abc" ng-controller="appCtrl">
然后控制器定义为:
angular.module('abc').controller('appCtrl' .....)
更新:代码模块名称中的错误不匹配。
答案 1 :(得分:0)
如果您正在使用UI-Router,则可以创建一个存在应用程序的抽象状态。为了澄清,您的导航仍然是您的应用程序的一部分,但您的主要应用程序将位于ui-view
指令下方。
编辑您可以阅读有关抽象状态on the documentation page的信息。作为奖励,如果您使用controllerAs,您的子控制器将原型继承父级的属性。保持您的应用程序范围开放,但干净整洁。