ng类中isActive方法中的变量angularjs

Variable in isActive method in ng-class, angularjs

本文关键字:变量 angularjs 方法 类中 isActive ng      更新时间:2024-01-22

我有一个html文件,它与angular中的指令一起使用,其中scope.course在.js文件中定义。在下面的代码中,ng-href="courses/{{course.url}}"工作得很好,并提供了"课程/myurl"的链接

但是,当在ng类的isActive方法中放入一个变量时,它不会显示,就好像我不能从这里访问它一样。

<li ng-class={active: isActive('/courses/{{course.url}}')}><a ng-href="courses/{{course.url}}">Overview</a></li>

我的isActive方法如下:

scope.isActive = function(route){ 
    console.log(route);
    return route === $location.path(); 
}

但它记录的"/课程/"没有任何其他

我如何将course.url放入我的isActive方法中?

试试这个:

var mod = angular.module('myapp', []);
mod.controller('mycontroller', function($scope, $location) {
  $scope.course = {
    url: 'myurl'
  };
  
  $scope.isActive = function(route){
    return route === '/courses/myurl';
    }
});
.active a {
  color: green;
  }
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="myapp" ng-controller="mycontroller">
  <div ng-class="{'active':  isActive('/courses/' + course.url) }"><a ng-href="courses/{{course.url}}">Overview</a>
  </div>
</div>