两行(或多行)上的ng-repeat

时间:2016-03-04 22:47:11

标签: javascript html angularjs ionic-framework

我的array

$scope.data = [1,2,3,4,5,6,7,8,9,10];

我的HTML

<div ng-repeat="item in data track by $index">{{item}}</span>

这将按预期输出:12345678910

但我希望array显示两个rows,如下例所示:

12345 // break here
678910

我在这个数组上运行了一些函数,所以我不想将数组拆分成两个较小的函数,因为这意味着我必须经常运行这些其他函数两次。我已经查看了ngRepeat的“开始结束”部分,但老实说,我不明白它是如何工作的,想法?

注意:如果重要的话,这是一个离子应用程序。

编辑:我无法得到建议的工作答案,但我可能会愚蠢地删除我的代码,并使其工作,但不是。这是我的完整html ng-repeat代码:

<div class="row">
   <div class="col" ng-repeat="item in data track by $index">
      {{item}}
      <br ng-if="$index == 4">
   </div>
</div>
这没用,怎么回事?有rowcol

的任何内容

2 个答案:

答案 0 :(得分:1)

ng-if等于$index时,您可以使用4插入新行:

<div class="col"> 
    <span ng-repeat="item in data track by $index">
        {{item}}
        <br ng-if="$index==4">
    </span>
</div>

此处,我们还将ng-repeat移至span内的div元素。这解决了应用于div的样式可能产生的任何潜在问题。

答案 1 :(得分:0)

您还可以尝试使用item。$ middle。

  

item。$ middle:如果重复元素位于迭代器中的第一个和最后一个

之间,则为true

https://docs.angularjs.org/api/ng/directive/ngRepeat

<div ng-repeat="item in data track by $index">
    {{item}} <br ng-if="item.$middle" />
</div>