我尝试根据网址中的当前位置突出显示导航栏上的选定链接。为此,我在导航栏的控制器中编写了以下功能:
$scope.isActive = function(route) {
return route === $location.path();
};
在html中我有这个:
<li ng-class="{active: isActive('/admin')}"><a href="/admin">Admin</a></li>
这适用于简单的url,但对于具有id和子路径的url表现不佳。我的意思是,如果我有网址&#39; item /:id&#39;它在isActive函数中不匹配,并且没有突出显示,同时我想突出显示li
的多个子路由,item
菜单应突出显示items
&amp; items/:id
&amp; items/my
。任何想法我怎么能实现这个目标?
答案 0 :(得分:0)
试试这个
<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>