登录页面通常与其他页面的外观完全不同.
基本上,使用angular的默认路由机制,index.html可以有一个ng-view来显示各种页面.
这个ng-view没有“条件”的概念.
我应该在每个模板中“包含”一个导航栏,打破DRY原则吗?
解决方法
我通过使用angular-ui-router
https://github.com/angular-ui/ui-router/wiki来做到这一点
使用Angular UI路由器您可以改为定义状态,但需要将状态发布/转发回导航组件.
Angular ui Router允许您嵌套视图,因此您无需将导航放在视图之外,这将导致重新加载页面不在视图之外.
只是注意ui路由器正在使用ui-sref指令来导航而不是ng-href.这可能是重建项目的很多工作但我相信它是值得的.
关于更改导航.
您可以将导航包装在ng-if或ng-show指令中,也可以在/,/ home状态下使用完全不同的基本模板.
干杯