一尘不染

如何突出显示当前菜单项?

angularjs

AngularJS是否可以在active当前页面的链接上设置类提供任何帮助?

我想象有一种神奇的方法可以完成,但是我似乎找不到。

我的菜单如下:

 <ul>
   <li><a class="active" href="/tasks">Tasks</a>
   <li><a href="/actions">Tasks</a>
 </ul>

并且我在自己的路线中有针对每个控制器的控制器:TasksControllerActionsController

但是我想不出一种方法来将a链接上的“活动”类绑定到控制器。

有什么提示吗?


阅读 262

收藏
2020-07-04

共1个答案

一尘不染

在看

<a ng-class="getClass('/tasks')" href="/tasks">Tasks</a>

在控制器上

$scope.getClass = function (path) {
  return ($location.path().substr(0, path.length) === path) ? 'active' : '';
}

这样,任务链接将在以’/ tasks’开头的任何url中具有活动类(例如’/ tasks / 1 / reports’)

2020-07-04