Javascript 登录按钮在屏幕上短暂显示

Javascript 登录按钮在屏幕上短暂显示,javascript,angularjs,Javascript,Angularjs,我的登录按钮在登录和登录视图之间出现了一个小问题。以下是我的链接: <a class="btn btn-sm btn-info navbar-btn" href="login" ng-if="currentPath !== '/login'" ng-show="!user" ng-cloak>Login</a> 发生的情况是,当用户注销一小秒时,用户对象为空,并且他们位于不同的视图上,即/posts登录按钮将显示,直到页面重定向到登录视图,然后它会像预期的那样消失。

我的登录按钮在登录和登录视图之间出现了一个小问题。以下是我的链接:

<a class="btn btn-sm btn-info navbar-btn" href="login" ng-if="currentPath !== '/login'" ng-show="!user" ng-cloak>Login</a>

发生的情况是,当用户注销一小秒时,用户对象为空,并且他们位于不同的视图上,即/posts登录按钮将显示,直到页面重定向到登录视图,然后它会像预期的那样消失。我正试图找出一种方法来删除简短的显示


非常感谢您提供的任何帮助

假设您的州名为“登录”,您将这样做:

<div ng-if="!$state.includes('login')></div>

除非您愿意使用ui路由器,否则您需要修改删除
用户
对象的方式。因此,当启动注销时,不要删除
用户
,一旦服务器确定并重新定向后,删除
用户

是否使用ui路由器?因为有更好的方法来实现这个ng if=“currentPath!=”/login“是的,请告诉我如何将
ng hide
类添加到元素中,以便它最初被隐藏?ng if=“currentPath!=”/login”ng show=“!user”为什么要将ng if和ng show放在一起?ng if=“!$state.includes('login')| user”这是我目前的路线<代码>.when('/login',{title:'login',templateUrl:'views/login.html',controller:'authCtrl'})所以您没有使用ui路由器
    controller: function($scope,$state) {
        $scope.$state = $state;


    }