【发布时间】:2016-09-09 19:57:55
【问题描述】:
我正在尝试使用 Angular Material 的 Angular 应用程序,但似乎无法让我的导航栏设置要选择的默认项目。我正在使用Angular Material Navbar (Directive Info) 来显示我的视图,这是我的导航栏模板 html:
<!-- Navbar -->
<md-content class="md-padding">
<md-nav-bar md-selected-nav-item="currentNavItem" nav-bar-aria-label="navigation links">
<md-nav-item md-nav-sref="layout.home" name="home">Home</md-nav-item>
<md-nav-item md-nav-sref="layout.gallery" name="gallery">Gallery</md-nav-item>
<md-nav-item md-nav-sref="#" name="page3">Page Three</md-nav-item>
</md-nav-bar>
</md-content>
在我的控制器中,我将 currentNavItem 设置为“home”,它应该对应于我的名为 home 的 md-nav-item,我认为应该将其设置为基于 md-selected-nav-item="currentNavItem" 选择
export default class HeaderController {
constructor($log) {
Object.assign(this, {
$log,
});
this.currentNavItem = 'home';
}
$onInit() {
this.$log.debug('HeaderController.$onInit');
this.$log.debug(this.currentNavItem);
}
}
如果我在加载应用程序时不会默认选中我的列表项,我们将不胜感激。
编辑
我的问题是我的控制器没有在导航栏选择“md-selected-nav-item="$ctrl.currentNavItem"'中使用。为每个 md-nav-item 添加值似乎不会影响活动项目设置。
【问题讨论】:
标签: angularjs ecmascript-6 navbar angular-material