我有这样的注销按钮:
<li class="dropdown" data-ng-if="userName">
<a href class="dropdown-toggle clear" data-toggle="dropdown" data-ng-show="userName">
</a>
<!-- dropdown -->
<ul class="dropdown-menu>
<li ng-hide="fb_id">
<a ui-sref="app.changePassword">Change Password</a>
</li>
<li>
<a ui-sref="app.changeProfilePic">Change Profile Picture</a>
</li>
<li data-ng-show="userName">
<a ui-sref="access.signout" data-ng-if="userName">Logout</a>
</li>
</ul>
<!-- / dropdown -->
</li>
在 Controller 中:
$scope.logIn = function (user) {
$scope.myPromise = AuthService.login({
'uid': user.email,
'password': user.password,
}).then(function (response) {
$localStorage.userName = response.userName;
$scope.userName = $localStorage.userName;
}, function (error) {
$scope.authError = true;
});
};
注销 Controller :
$scope.userName = "";
delete $localStorage.userName;
$rootScope.userName = "";
无论我使用 ng-if
或 ng-show
,它仍然显示注销按钮和下拉菜单。
最佳答案
尝试使用以下代码。
<a ui-sref="access.signout" data-ng-if="userName != ''">Logout</a>
关于javascript - 在 AngularJS 中使用 ng-show 注销后无法隐藏注销按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37759934/