这是我到目前为止所做的:
这是基于简单的下拉登录。 我想要做的是在人登录时将登录栏更改为其他内容,但我希望当前状态保持不变。
(在这个例子中,无论登录状态如何,我都希望显示“This is home view”文本。)
我目前的代码结构:
<body ng-app="pmfApp">
<div>
<!--- login form and stuff.... ---->
</div>
<nav class="navbar">
<div class="container-fluid">
<div id="status-buttons" class="text-center">
<a ui-sref-active="active" ui-sref="home">Home</a>
<a ui-sref-active="active" ui-sref="about"> About</a>
</div>
</div>
</nav>
<div ui-view>
<!--- I have home state view triggered ---->
</div>
因此,如果登录成功,我会有这样的事情:
$auth.login(credentials).then(function(data) {
$state.go('???????', {});
});
答案 0 :(得分:2)
听起来您想要在$scope
中设置一个标记来跟踪用户是否已登录。然后您可以将此标记与ng-if
一起显示并隐藏您想要的部分用户登录状态。
<div ng-if="!loggedInFlag">
<!--- login form and stuff.... ---->
</div>
<nav class="navbar" ng-if="loggedInFlag">
<div class="container-fluid">
<div id="status-buttons" class="text-center">
<a ui-sref-active="active" ui-sref="home">Home</a>
<a ui-sref-active="active" ui-sref="about"> About</a>
</div>
</div>
</nav>
<div ui-view>
<!--- I have home state view triggered ---->
</div>