我有以下代码: HTML
<li ng-class="{ highlight: isActive('/admin/trackDef/list') || isActive('/admin/trackDef/add')}">
<a href="${createLink(uri: '/#/admin/trackDef/list')}"></a>
</li>
Js控制器
.controller('navCtrl', ['$scope', '$location', function ($scope, $location) {
$scope.isActive = function (viewLocation) {
return viewLocation === $location.path();
};
$scope.isAnyActiveAdmin = function () {
return ['/admin/trackDef/list', '/admin/trackDef/add', '/admin/country/list','/admin/country/add', '/admin/user/list', '/admin/user'].indexOf($location.path()) > -1;
};
}])
.config(['$routeProvider', function ($routeProvider) {
$routeProvider.
when('/admin/trackDef/list', {
templateUrl: 'assets/trackDef/trackDef-list.tpl.html',
controller: 'PaginatedListController',
resolve: {Service: 'TrackDefServices'}
}).
when('/admin/trackDef/add', {
templateUrl: 'assets/trackDef/trackDef-save.tpl.html',
controller: 'TrackDefController'
}).
when('/admin/trackDef/:id', {
templateUrl: 'assets/trackDef/trackDef-save.tpl.html',
controller: 'TrackDefController'
});
}])
如何突出显示具有随机地址的页面,如:
/管理/ trackDef / 123 /管理/ trackDef / 234 /管理/ trackDef / 534
等
答案 0 :(得分:0)
我认为你可以简化一些事情并使用JS函数indexOf()
,类似于你在isAnyActiveAdmin()
中使用它的方式
您的isActive()
看起来与此相似:
$scope.isActive = function () {
return $location.path().indexOf("admin") ? true : false
};
这适用于包含admin的任何路径。