Angular route wildcard可能/解决方法?

时间:2014-05-29 23:07:25

标签: javascript angularjs wildcard routes

我创建了一个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之外的所有内容都将处于活动状态。

有没有人知道一种解决方法,因为我还没有在论坛和角度文档中找到它,所以我想这还不存在..

1 个答案:

答案 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

...试一试。