使用$索引来比较由ng-repeat返回的值

问题描述:

我有一个大小为2的数组对象。我正在对数组对象进行ng-重复并显示值。但是现在我想要比较对象内的值。我可以使用$索引吗?

我试过使用$ index,$ index-1但它不工作。事实上,它不会显示任何值。

div.timeline-block(ng-repeat="(key,value) in vm.alertHistoryData | groupBy: 'historyDateWithoutTime' | toArray:true | orderBy: 'historyDateWithoutTime':true ") 
     h2.timeline-block-header 
      | {{ value[0].historyDateWithoutTime | date: "mediumDate" }} 
     ul.timeline-entry-list 
      //- to make the array of data render in reverse order we add "true" to orderBy filter 
      li.timeline-entry-list-item(ng-repeat= "history in value | orderBy: 'alert-modified-date':true") 
       h3.list-item-time 
        | {{ history["alert-modified-date"] | date:"mediumTime"}} 
       div.list-item-content 
        div.label-block.label-block-horz 
         | State 
         div.label-block-value 
          | {{ history.state[$index] | alertState }} 
         hr.hr-default.hr-spacer-sm 
         div.label-block-value 
          | {{ history[$index-1].state }} 
        div.label-block.label-block-horz 
         | Priority: 
         div.label-block-value 
          span.label-priority(ng-class="'priority-{{history.priority}}'") 
           | {{ history.priority}} 

是因为我使用过滤器吗?请帮助

historyvalue中的一项。

变化:

history[$index-1].state 

要:

value[$index-1].state 
+0

奏效:)谢谢你这么much.Can你解释什么是我做错了吗? – user2128

+0

例如:'value' = [{state:'a'},{state:'b'},{state:'c'}]]。使用'ng-repeat ='历史值',我们有第一个'history'是{state:'a'}。你不能选择到hisory [$ index] .state。 – WorkWe

+0

明白了!谢谢。 – user2128