在中间插入其他内容时循环浏览项目

时间:2017-09-14 17:20:58

标签: angularjs

我需要循环遍历数组的所有项目,例如ng-repeat,但要在中间插入其他内容,例如在第3和第4之间。怎么做?

WANT THIS
<img 1 />   <!-- this is one array item -->
<img 2 />
<img 3 />
<div>something else</div>   <!-- between array items -->
<img 4 />
<img 5 />
...
<img 9 />

上面必须没有包含多个项目的额外元素,因为每个项目都是一个Bootstrap网格项目,可能会在较窄的屏幕上流向下一行。下面不行:

NOT OK
<div>
  <img 1 />
  <img 2 />
  <img 3 />
</div>
<div>something else</div>
<div>
  <img 4 />
  <img 5 />
  ...
  <img 9 />
</div>

关于重复,我不认为这个问题会重复另一个问题Customize ng-repeat in AngularJS for every nth element。后者的答案是

<div ng-repeat="items in MyList">
  <img />
  <br ng-if="...$index..." />
</div>

输出
<div><img /></div>   <!-- one repeating item -->
<div><img /></div>
<div><img /></div>
<div><img /><br/></div>

但我需要一个额外的标签 重复项目。

1 个答案:

答案 0 :(得分:0)

让这是你的数组

array = []; //your array

现在为所需的数组索引添加一些值。让你想加入第四名

array.splice(4, 0, "something else");




<div ng-repeat="(key, value) in array">

    <img ng-if="key != 4" />  
    <div ng-if="key == 4">something else</div>

</div>

希望它能给你一些想法