我需要创建一个SPA。我需要一个只有用户名和用户名的登录页面。密码字段。所有其他页面都有标题&页脚部分是共同的。我保持头和& _layout.html页面中的页脚部分&使用ng-view渲染主要内容。因此,布局内容也将用于登录页面。
所以在_layout.html页面中我使用ng-show,ng-hide基于已认证用户的存在。
<div ng-controller="layoutController as lc">
// for login
<div ng-hide="lc.isAuthenticated">
<ng-view></ng-view>
</div>
// for all pages but login
<div id="wrap" class="equipment" ng-show="lc.isAuthenticated">
<div class="container">
<div class="navbar-inverse" role="navigation">
// content here
</div>
<div class="main-container">
<div ng-view></div>
</div>
<div id="footer" class="row">
<div class="col-sm-10 col-lg-10">
<ul class="">
<li>CRE: </li>
<li>Machine Count: <span>35</span></li>
<li>Data Date: <span>N/A</span></li>
<li>User: <span>bla bla</span></li>
<li>Company: <span>bla bla</span></li>
<li>Subscription Expiry: <span>05/31/2016</span></li>
</ul>
</div>
</div>
</div>
</div>
</div>
登录后,当我重定向到某个页面时,使用
$location.path("dashboard")
它没有再次加载_layout&amp;因此布局内容不会到来。实现这一目标的正确方法是什么? 如何限制某些页面使用布局或如何在成功登录后重新加载布局页面?