Angularjs 仅调用一次ngRoute RouteController

Angularjs 仅调用一次ngRoute RouteController,angularjs,ngroute,angularjs-ng-route,Angularjs,Ngroute,Angularjs Ng Route,我有一个小提琴手来显示我的设置 问题是RouteControl函数在页面加载时只被调用一次,但是在散列更改时(由于链接单击),函数RouteControl不会再次被调用 我在另一个ng模块中生成了链接,不确定链接是否必须与路由器在同一模块中 <div id="router"> <div ng-view></div> </div> <div id="navigation" data-ng-cloak> <

我有一个小提琴手来显示我的设置

问题是RouteControl函数在页面加载时只被调用一次,但是在散列更改时(由于链接单击),函数
RouteControl
不会再次被调用

我在另一个ng模块中生成了链接,不确定链接是否必须与路由器在同一模块中

<div id="router">
    <div ng-view></div>
</div>

<div id="navigation" data-ng-cloak>
        <ul id="folios" data-ng-controller="FoliosController" class="nav nav-pills nav-stacked">
            <li data-ng-repeat="folio in folios" ng-class="{active: isActive('/search/{{folio.productId}}')}">
                <a href="#/search/{{folio.productId}}">{{folio.title}}</a>
            </li>
        </ul>
        <div ui-view></div>
    </div>

编辑:

这个问题得到了进一步的诊断。ng控制器生成的任何列表/锚点都不会对范围外的哈希更改做出响应,而静态链接是无效的。在plunkr链接中,“foo”和“bar”单击会触发控制器,但“abc”和“def”不会触发。请复习。问题是如何使“abc”和“def”(动态链接)也对变化作出响应


代码按照您的编码方式正常运行。您正在控制器的构造函数中调用
routeController
,但它不会在其他任何地方被调用(路由器也不会这样做)

如果需要在每个路由更改中调用路由管理器> /Cuff>函数,请考虑绑定到路由更改事件:

$route

看看这个砰的一声。注意,我将绑定到stateChangeSuccess,因为您使用的是ui路由器而不是ngRoute


谢谢@sma的回复,我对angular比较陌生,你能帮我做一些代码演示吗。我假设ngRoute一直在监视我的url,并会在哈希更改时调用RouteControl我相信它已经注定会在配置中更改路由,在
中,当
函数调用将plunk添加到我的答案中时如果你使用ngRoute,那么你可以改用$routeChangeSuccess基于我所了解的,我已经更新了我的小提琴,但仍然没有成功,敬请检阅