问:隐藏元素
我如何能“登录”视图/路由添加到我的角度应用程序,隐藏了是ng-view
DOM之外的元素?
现状:
在我的角度页,我在左边和中央的主视图导航树视图:
<div ng-app="myApp">
<div class="col-sm-3" ng-controller="TreeController">
<div treeviewdirective-here>
</div>
</div>
<div class="col-sm-9 content" ng-view="">
</div>
</div>
树视图中的每个节点使用的位置发生变化像window.location.hash = '#/' + routeForTheClickedItem;
。
使用标准路由,这很有效,即树不会每次重新加载,而只是主窗口。
问题:
我想一个登录视图中添加登录功能。对于这个视图,树视图不应该是可见的 - 只有在登录后。为了用正常的路由实现这一点,我知道我可以将ng-view
向上移动一层,即将树视图嵌入到每个视图中 - 但这会导致树视图随着每个路由更改而重新加载。
是否有一个简单的替代方法,可以让我检查在ng-view中显示哪个页面?或者在路由期间检查一些其他变量集?然后,我可以使用类似:
<div class="col-sm-3" ng-controller="TreeController" ng-show="IsUserLoggedIn">
但这样当用户注销该树视图隐藏这不看“用户” – Venugopal