Controller Scope Array不在另一个控制器上加载更新数据

时间:2016-07-29 03:09:26

标签: angularjs

我创建了一个索引页面,其中包含" NavigationController"并绑定索引页面上的菜单。当我重定向到新的页面控制器并将其注入" NavigationController"绑定下一页的最新菜单,但它始终显示旧菜单。当我刷新页面时,它会加载新的菜单。

<nav class="static-sidebar" role="navigation">
                <ul ng-controller="NavigationController" id="sidebar" ng-init="!layoutLoading">
                    <li ng-repeat="item in menu" ng-include="'templates/nav_renderer.html'" ng-show="{{item.hasRights}}" ng-cloak></li>
                </ul>

使用我的工厂方法返回meun的控制器是:

$scope.menu = GetHttpRequest.GetMenu();

现在,我加入另一页,即

<div ng-controller="NavigationController"></div>

但这不会加载最新菜单,直到我刷新页面

所以,你能帮助我吗?

2 个答案:

答案 0 :(得分:1)

{{}}中不需要

ng-show

使用ng-show="item.hasRights"代替ng-show="{{item.hasRights}}"

答案 1 :(得分:0)

如果它在刷新后有效,则表示它是您网站中的加载顺序。检查您是否有正确的加载顺序,例如:vendor lbirariers - &gt;你的图书馆 - &gt; (...) - &gt;你的控制器

还要检查js文件中的依赖项注入标头,因为您可能会跳过某些内容