AngularJS - 观察路线变化的多个控制器

时间:2014-07-22 21:06:53

标签: angularjs

根据我的阅读,Angular不支持URL更改的开箱即用的多个视图。

我真正想要的是拥有一组控制器来管理应用程序UI的不同部分,每个控制器都以自己的方式响应路由更改。

是否有一个共同的解决方案,或者我是否以错误的方式考虑应用程序结构?

ui-router插件没有出现(对我来说)以我想要的方式解决这个特殊问题 - 这是一种状态优先的方法,可选的URL更改,而不是URL优先。

1 个答案:

答案 0 :(得分:0)

Angular实际上支持多个开箱即用的视图,它不支持多个ng-view开箱即用。您可以使用ng-include并在该元素上放置一个控制器,并监视您需要的任何路径更改。

基本上你会做这样的事情:

<ng-include src='"menu.html"' ng-controller='MenuCtrl'></ng-include>
<div ng-view></div>

ng-include的控制器,你会看到路线改变和做任何需要的事情。

当然,ng-view是由应用配置中的路由更改设置驱动的。