ng-if,有没有办法在遍历数组时停止向数组的最后一个元素施加条件?

时间:2019-05-09 23:50:50

标签: angularjs angular-ng-if

很抱歉,我的问题还不够清楚。我只是提取json对象的一部分,该对象具有两个具有两个不同名称的单独对象。每个对象都有一个带有一些数据的对象数组。对象中的变量之一是月,它是一个数字。

如果6和12是零索引对象中的月份,而12是第一索引对象中的月份,我想将它们打印为6-11和12-23。这是html代码。

<td class="label"> 
       <span ng-if="row.id=="ABC">{{tier.months}} - 
                 {{row.tiers[$index+1].months-1}} </span>
       <span ng-if="row.id=="XYZ">{{tier.months}} </span> 
</td>

但这给了我最后一个元素60--1而不是60。 我尝试过

<span ng-if="row.id=="'ABC' && ($index == parseInt(row.tiers.length-1))"> 
 {{tier.months}} - {{row.tiers[$index+1].months-1}} </span>

没有用。

任何建议将不胜感激。

2 个答案:

答案 0 :(得分:1)

$index一样,AngularJS也在$last内部公开ng-repeat。如果迭代中的当前项是数组中的最后一项,则其值为true,否则为false。尝试改用它。

答案 1 :(得分:0)

您可以使用ng-repeat-startng-repeat-end,并且可以访问$index中的ng-repeat-end。希望对您有帮助。