我正在使用 Angular 1 并且我正在尝试在用户登录后隐藏我的登录按钮?

I am using Angular 1 and I am trying to ng-hide my login button once a user is logged in?

我知道我应该这样做并且 ng-hide="something",但我不知道从那里去哪里。不确定我是否还必须在我的 logoutController 或 mainController 中编写另一个函数。

  <ul class="right hide-on-med-and-down">
    <li><a ui-sref="login">Login</a></li>
    <li><a ui-sref="logout" ng-click='logoutCtrl.logout()'>Logout</a></li>

  </ul>

</div>

nav.html

function logoutController($state, AuthService) {
 var vm = this
  vm.logout = function () {

// call logout from service
AuthService.logout()
  .then(function () {
    $state.go('login')
  })

} }

app.js

这取决于您登录的方式,但您可以

<ul class="right hide-on-med-and-down">
    <li><a ng-show="inNotLogged"ui-sref="login">Login</a></li>
    <li><a ui-sref="logout" ng-click='logoutCtrl.logout()'>Logout</a></li>

  </ul>

</div>

并在您的 app.js .run 中设置 $rootScope.isNotLogged = true; 然后在您的登录方法中:

$rootScope.isNotLogged = false;
$scope.isNotLogged = $rootScope.isNotLogged;

所以在 tour lgout 中你将设置

$scope.isNotLogged = true;
$rootScope.isNotLogged = $scope.isNotLogged;