我想要實現的第一個視圖是基於一些子視圖並且主視圖是抽象的 - 僅重定向到第一個子視圖。我實現了兩個導航欄。一個用於導航普通視圖,另一個僅導航到主子視圖。我想知道當主子視圖中的一個主動子視圖處於活動狀態時,如何將主導航欄設置爲在家中活動。當任何子視圖處於活動狀態時,AngularJs navbar父視圖應該處於活動狀態
下面的代碼頂部酒吧navbar。主頁的任何子視圖處於活動狀態時,主頁按鈕應處於活動狀態(home.a,home.b)。目前Home從未活躍。
<ul class="nav navbar-nav">
<li ui-sref-active="active"><a ui-sref="home">Home</a></li> //here i can use home.a but when i will navigate to home.b it ll be inactive
<li ui-sref-active="active"><a ui-sref="about">About</a></li>
<li ui-sref-active="active"><a ui-sref="contact">Contact</a></li>
</ul>
子視圖導航欄工作正確每當我對某個子的觀點正確的按鈕激活
<ul class="nav nav-pills nav-stacked">
<li ui-sref-active="active"><a ui-sref="home.a">Wspolne</a></li>
<li ui-sref-active="active"><a ui-sref="home.b">Moje</a></li>
</ul>
這條路線是收盤soution主導航欄子vievs主動當選擇,但是當我將改變主視圖聯繫然後我不能回家原因它是抽象的視圖:
.state('home', {
abstract: true,
templateUrl: 'app/main/main.html',
controller: 'MainController',
controllerAs: 'ctrl'
})
.state('home.a', {
url: '/',
templateUrl: 'app/main/a/a.html',
controller: 'AController',
controllerAs: 'ctrl'
})
.state('home.b', {
url: '/',
templateUrl: 'app/main/b/b.html',
controller: 'BController',
controllerAs: 'ctrl'
})
.state('contact', {
url: '/contact',
templateUrl: 'app/contact/contact.html',
controller: 'ContactController',
controllerAs: 'ctrl'
})