manuplating ng-repeat中的不同项目取决于索引

时间:2015-09-23 10:01:31

标签: javascript angularjs angularjs-ng-repeat

我正在使用ng-repeat来呈现rails api提供的信息。

我的数组中有2个对象,价格不同。

我想要做的是向用户显示每小时的价格,但是根据价格,我需要除以不同的数字,这意味着取决于数组中项目的索引。目前,我正在获得每个项目的总价格,但希望以不同方式划分两个项目。

目前我的代码是:

的Javascript /角

apiCall(function (data) {
    for(var i=0; i<data.length;i++){
    controller.holder.push({
    id: data[i].id,
    price: data[i].price  
  });
}

controller.holder = [
  {
    id: 1,
    price: 100
},{
   id: 1,
   price: 500
}]

HTML

 <div ng-repeat="pack in Test.holder" class="col-sm-6">
      <p>{{pack.hours}}  - {{pack.price | currency }}</p> 
      <button translate>Go</button> 
</div>  

我希望实现的是这样的(请参阅代码中的评论):

<div ng-repeat="pack in Test.holder" class="col-sm-6">
//if pack index in holder is 0 divide the item by 5
//if pack index in holder is 1 divide the item by 10 
          <p>{{pack.hours}}  - {{pack.price | currency }}</p> 
          <button translate>Go</button> 
</div>  

通过使用$ index有没有办法做到这一点?经过大量的研究,我找不到一个好的答案。

非常感谢任何帮助。如果上述任何内容不清楚,请告诉我,我可以提供更多详细信息。

2 个答案:

答案 0 :(得分:4)

假设您想要将价格除以5或10:

<div ng-repeat="pack in Test.holder" class="col-sm-6">
   <p ng-if="$index == 0">{{pack.hours}}  - {{pack.price / 5 | currency }}</p> 
   <p ng-if="$index == 1">{{pack.hours}}  - {{pack.price / 10 | currency }}</p>
   <button translate>Go</button> 
</div> 

答案 1 :(得分:1)

我想说使用$ index和ng-if的组合。

如果索引&lt; 5这样做 否则就这样做。