Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AngularJS:状态更改后如何刷新页面上所有可见的控制器?-登录后导航_Angularjs_Templates_Angular Ui Router_State - Fatal编程技术网

AngularJS:状态更改后如何刷新页面上所有可见的控制器?-登录后导航

AngularJS:状态更改后如何刷新页面上所有可见的控制器?-登录后导航,angularjs,templates,angular-ui-router,state,Angularjs,Templates,Angular Ui Router,State,通过使用指令navbar并将其包含在index.html中,我成功地使其工作,但在登录后,当我更改状态时,我的navbar不会得到更新。如果我手动刷新页面,那么它将反映更改 有更好的方法吗?谢谢 index.html <navbar></navbar> <div class="container"> <ui-view></ui-view> </div> <ul class="nav navbar-nav

通过使用指令
navbar
并将其包含在index.html中,我成功地使其工作,但在登录后,当我更改状态时,我的navbar不会得到更新。如果我手动刷新页面,那么它将反映更改

有更好的方法吗?谢谢

index.html

<navbar></navbar>
<div class="container">
  <ui-view></ui-view>
</div>
    <ul class="nav navbar-nav navbar-right">
      <li><a ui-sref="login" ng-hide="navbar.auth">Login</a></li>
      <li><a href="#" ng-click="navbar.Logout()" ng-show="navbar.auth">Logout</a></li>
    </ul>
<div ui-view="nav"></div>
<div class="container">
    <ui-view></ui-view>
</div>


navbar.html

<navbar></navbar>
<div class="container">
  <ui-view></ui-view>
</div>
    <ul class="nav navbar-nav navbar-right">
      <li><a ui-sref="login" ng-hide="navbar.auth">Login</a></li>
      <li><a href="#" ng-click="navbar.Logout()" ng-show="navbar.auth">Logout</a></li>
    </ul>
<div ui-view="nav"></div>
<div class="container">
    <ui-view></ui-view>
</div>

我最后做的不是对
导航栏使用指令,而是对同一状态使用多个视图。这会在状态更改时自动重新加载所有视图

index.html

<navbar></navbar>
<div class="container">
  <ui-view></ui-view>
</div>
    <ul class="nav navbar-nav navbar-right">
      <li><a ui-sref="login" ng-hide="navbar.auth">Login</a></li>
      <li><a href="#" ng-click="navbar.Logout()" ng-show="navbar.auth">Logout</a></li>
    </ul>
<div ui-view="nav"></div>
<div class="container">
    <ui-view></ui-view>
</div>
进一步阅读: