导航菜单指令在用户登录或注销时刷新

navigation menu directive refresh on user login or logout

本文关键字:注销 刷新 登录 用户 菜单 单指令 导航      更新时间:2023-09-26

我有一个包含用户信息(登录,注销…)的菜单指令,它会随着用户登录或退出而改变状态。

<ul class="nav navbar-nav">
    <li ng-hide="isLoggedIn"><a href="#/login">Sign in</a></li>
    <li ng-show="isLoggedIn"><a href="#/profile">{{ currentUser.name }}</a></li>
    <li ng-show="isLoggedIn" ng-click="logout()"><a>Logout</a></li>
</ul>

我希望我的index.html的结构是这样的

<navigation></navigation>
<ng-view></ng-view>

这不能像我想要的那样工作,因为我在登录/注销时重定向:只有ng-view被刷新,而不是导航指令…

为了解决这个问题,我把导航指令放在了我在ng-view中加载的每个页面模板的开头。

这是最好的方法吗?

您可以这样做:可以在$rootScope中设置isLoggedIn变量并在登录或注销时将其更新为1和0