我很抱歉如果我没有很好地解释自己,那么这里就是这样。基本上我无法解决这个问题。我正在使用Yeoman来生成我的角度项目。我有一个页眉和页脚,页脚将是静态的,页眉将需要它自己的控制器。我遇到的问题是,我并不特别希望标题在其他控制器之外。也许我错了,这实际上不是一个问题,最好的做法显然是在ng-view
以外的标题?这是我到目前为止有:如何使用AngularJs处理页眉和页脚
<head>
<!-- head stuff here -->
</head>
<body ng-app="dscover.me">
<div ng-include src="'partials/header.html'"></div>
<div ng-view="">
</div>
<div ng-include src="'partials/footer.html'"></div>
</body>
这是包括MainCtrl
外的页眉和页脚的正确方法是什么?这对我来说是有道理的,因为如果我要创建一个新的控制器/页面,我仍然可以访问其外部的控制器?再次的问题是,我想避免使用rootScope
,不幸的是,这似乎是唯一的方法,当标题在MainCtrl
以外?
对于可怕的解释我很抱歉,但我希望你们明白。如果有更好的方法,请告诉我。任何帮助将不胜感激!
你应该保持这种结构。如果你想要控制器交换数据,无论如何你都需要服务。而且您不希望每次视图更改时重新呈现标题。 – maxdec
rootScope是使用事件模型在控制器之间进行通信的完全可接受的机制,其中控制器引发由其他控制器订阅的事件。 – Chandermani
另一种选择是使用$ broadcast将消息发送到头部,但我同意,在这种情况下,使用rootScope没有任何问题。 –