上的文档
我用这种方式创建了菜单和子菜单:
<li>
<a href="#/solution" ng-class="{ current: isActive('/solution') }" >
<i class="halflings white home"></i>
{{menu.home}}
</a>
</li>
当我在localhost/Solution上时,Solution菜单处于活动状态。当子菜单处于活动状态时,如何执行当前父菜单?类似于:
current: isActive('/solution/1,/solution/2,/solution/3,/solution/.....').
我的isActive
方法如下:
$scope.isActive = function (viewLocation) {
var active = (viewLocation === $location.path());
return active;
};
根据我的评论,要使用正则表达式进行检查,请使用:
<li>
<a href="#/solution" ng-class="{ current: isActive(/^/solution/) }" >
<i class="halflings white home"></i>
{{menu.home}}
</a>
</li>
您正在将正则表达式传递给isActive
函数,该函数将匹配以"/solution"开头的任何字符串
现在,您的isActive
函数必须根据regexp:测试url
$scope.isActive = function (viewLocation) {
return viewLocation.test($location.path());
};
有关如何工作的详细信息,请查看JS的regexp和regex#test