Javascript 如何在ng repeat中为变量设置类

Javascript 如何在ng repeat中为变量设置类,javascript,angularjs,for-loop,ng-repeat,Javascript,Angularjs,For Loop,Ng Repeat,例如,我在范围中描述了变量5,我对这个变量进行了范围计算,现在我必须显示这个变量,并为这个变量设置css.class。我该怎么做 这是我在code中的示例,创建一个基于值返回首选css类的函数: $scope.getClass = function(n) { /*example implementation*/ if (n == 5) { return "red"; } else { return "normal"; } };

例如,我在范围中描述了变量5,我对这个变量进行了范围计算,现在我必须显示这个变量,并为这个变量设置css.class。我该怎么做


这是我在
code

中的示例,创建一个基于值返回首选css类的函数:

$scope.getClass = function(n) {
    /*example implementation*/
    if (n == 5) {
        return "red";
    } else {
        return "normal";
    }
  };
然后在ng类属性内使用此函数:

<li ng-repeat="n in range(5,15)" ng-class="getClass(n)">test {{n}}</li>
然后,在范围内函数中,您必须添加您的值(可以在末尾):

或者,如果您使用1.3.0-rc5以上的AngularJS,您可以简单地使用(无需实体声明)(请参阅):

测试{{n} 请注意,在本例中,您不再需要getClass()函数,只需将n与myvalue进行比较即可


能否指定如何“将css添加到变量”?可能您必须使用ng类,但您想要实现什么?我试图实现我的变量被标记为其他颜色,例如从fiddle,我们在步骤3中看到范围从0到9,所以我们可以看到0,3,6,9。我想看到我的变量5,例如它是红色的。这绝对是个好主意,但我有一个范围是用我的方法计算的,所以我们应该看到范围0,3,5(红色),6,9。但我喜欢你的想法,我会试着和你一起玩it@Anton所以,尽管变量的值不在range()函数返回的数组中,但您还是希望有一个额外的条目包含该变量的值?
$scope.myvalue = 5;
$scope.range = function(min, max, step){
    step = step || 1;
    var input = [];
    for (var i = min; i <= max; i += step) input.push(i);
    input.push($scope.myvalue); //insert value that has to be highlighted
    return input;
  };
<li ng-repeat="n in range(0, 9, 3) | orderBy:identity" ng-class="{'red' : n == myvalue}">test {{n}}</li>
$scope.identity = angular.identity;
<li ng-repeat="n in range(0, 9, 3) | orderBy" ng-class="{'red' : n == myvalue}">test {{n}}</li>