Javascript Angular ng class指令在ng repeat中不起作用

Javascript Angular ng class指令在ng repeat中不起作用,javascript,angularjs,ionic-framework,Javascript,Angularjs,Ionic Framework,我有一个问题,我试图在一个离子列表中的一些列表项的颜色。somearray是一个数组,其索引被涂成红色。不管怎样,下面的代码只对数组中的第一个索引着色。问题出在哪里 <ion-list> <ion-item ng-class="{red : !somearray.indexOf($index)}" ng-repeat="todo in todos" class="item" > <div>

我有一个问题,我试图在一个离子列表中的一些列表项的颜色。somearray是一个数组,其索引被涂成红色。不管怎样,下面的代码只对数组中的第一个索引着色。问题出在哪里

      <ion-list>
        <ion-item ng-class="{red : !somearray.indexOf($index)}" ng-repeat="todo in todos" class="item" >
              <div>
                <button class="button button-block button-dark" ng-click="addNewForm($index)">
                  {{todo.title}}
                </button>
              </div>
        </ion-item>
      </ion-list>
如果找不到项,indexOf返回-1;如果元素的索引不存在,indexOf返回-1

您可以检查indexOf的返回值是否大于-1:

{red : somearray.indexOf($index) > -1}
var-app=angular.module'app',[]; 应用程序控制器'myController',函数$scope{ $scope.todos=[{title:'a'},{title:'b'},{title:'c'},{title:'d'}]; $scope.somearray=[1,2]; }; 瑞德先生{ 颜色:红色; 字体大小:粗体; } {{todo.title} {{$index}}
你想干什么?somearray.indexOf$index将返回只有0为false的索引,因此只有第一行为红色。噢,非常感谢,愚蠢的错误。它应该是红色的:somearray.indexOf$index==-1.