[英]Angular routes & active links
我正在嘗試根據URL中的當前位置突出顯示導航欄上的選定鏈接。 為此,我在navbar的控制器中編寫了以下函數:
$scope.isActive = function(route) {
return route === $location.path();
};
和在HTML我有這個:
<li ng-class="{active: isActive('/admin')}"><a href="/admin">Admin</a></li>
這對於簡單的url效果很好,但對帶有id和子路徑的url效果不好。 我的意思是,如果我將URL作為“ item /:id”使用,則它在isActive函數中不匹配並且未突出顯示,我也想針對多個子路線突出顯示同一個li
,例如應該針對items
& items/:id
突出顯示item
菜單和items/my
。 知道我該如何實現嗎?
嘗試這個
<li ng-class="{isActive('/admin')? 'active' : ''}"><a href="/admin">Admin</a></li>
要么
$scope.getActiveClass = function(route) {
return (route === $location.path())? 'active' : '';
};
//in directive
<li ng-class="getActiveClass ('/admin')"><a href="/admin">Admin</a></li>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.