angular-route不适用于嵌套控制器

时间:2014-06-01 12:41:40

标签: angularjs twitter-bootstrap angular-routing

我有一个具有以下结构的角度页面:

<div ng-controller="MainCtrl">
    <div ng-controller="HeaderCtrl">
    <div ng-view>

问题是,位于MainCtrl div和HeaderCtrl div之外的任何链接运行良好,但HeaderCtrl内的链接由于某种原因导致整页重新加载,而不是被Angular客户端路由器拦截和处理。

我做错了什么?我该如何防止这种情况? 谢谢。

我必须添加我使用的是html5mode。

编辑:好吧,这是一些蹩脚的hiden非角度JS改变了onclick属性。

2 个答案:

答案 0 :(得分:0)

您应该查看ui-router来处理嵌套控制器。基本的ng-router处理它并不优雅,并导致像你的错误。

ui-router API与ng-router非常接近,因此可以轻松切换到它。它将修复您的错误并允许您在路由中使用嵌套模板/控制器。

答案 1 :(得分:0)

好吧,这是一个糟糕的hiden非角度JS改变onclick属性。