我创建了一个isActive函数来在菜单元素上设置活动类。
功能如下:
$scope.isActive = function (path) {
if (path == $location.path()) {
return true;
} else {
return false;
}
}
在我的HTML中只是使用:
<li ng-class="{active: isActive('/page')}">
<a href="page">Page</a></li>
但是这个HTML只在我的模板中定义一次。所以使用它真的很棒:
isActive('/page*')
因此,“/ page”URL之外的所有内容都将处于活动状态。
有没有人知道一种解决方法,因为我还没有在论坛和角度文档中找到它,所以我想这还不存在..
答案 0 :(得分:2)
可能这个?
$scope.isActive = function (path)
{
var strRegExPattern = '\\b'+path+'\\b';
if( document.location.pathname.match(new RegExp(strRegExPattern,'g')) )
{
return true;
} else {
return false;
}
}
我不知道你是否可以替换
document.location.pathname.match(... // VANILLA JS
与
$location.path().match(... // NG JS
...试一试。