我有一个数组a=[1,2,3,4,5,6]
。
在此阵列上使用ng-repeat
,我创建了6 divs
。
请参阅此plunker
有没有办法在每行之后再添加一个div
。所以在3个div之后我想再添加一个div
。
我查看了this示例。但他们正在创造一个孩子div
。是否可以在ng-repeat
div
答案 0 :(得分:8)
试试ng-repeat-start& NG-重复端。
<div class="example-animate-container">
<div class="square" ng-repeat-start="friend in a">
{{$index}}
</div>
<div ng-if="$index % 3 == 2" ng-repeat-end>
extra div
</div>
</div>
请注意,自角度1.2.1开始包含ng-repeat-start指令。
ng-repeat:重复一系列&#34;一个&#34;父元素
<!--====repeater range=====-->
<Any ng-repeat="friend in friends">
</Any>
<!--====end of repeater range=====-->
ng-repeat-start&amp; ng-repeat-end:使用ng-repeat-start和ng-repeat-end来定义扩展转发器范围的起点和终点
<!--====repeater range start from here=====-->
<Any ng-repeat="friend in friends" ng-repeat-start>
{{friend.name}}
</Any><!-- ng-repeat element is not the end point of repeating range anymore-->
<!--Still in the repeater range-->
<h1>{{friend.name}}</h1>
<!--HTML tag with "ng-repeat-end" directive define the end point of range -->
<footer ng-repeat-end>
</footer>
<!--====end of repeater range=====-->
答案 1 :(得分:1)
为此目的引入了ng-repeat-start
和ng-repeat-end
语法。请参阅文档http://docs.angularjs.org/api/ng/directive/ngRepeat
所以你会做类似的事情:
<div ng-init="a = [1,2,3,4,5,6]">
<div class="example-animate-container">
<div class="square" ng-repeat-start="friend in a">
{{$index}}
</div>
<div ng-repeat-end>Footer</div>
</div>
答案 2 :(得分:0)
您可以使用空div作为重复的容器。然后只将子元素渲染为正方形(或任何你想要的东西)。这样,你的额外div将是一个兄弟,而不是一个孩子。
答案 3 :(得分:0)
在这里看看这个plunker,这可能是你的解决方案吗?我不太了解你的问题,因为我觉得如果你的数组在外部js文件中实例更好,但除此之外看看plunker