Javascript 使用两个数据数组重复ng
更新。我将数据存储在一个元组数组中:称为$scope.unique。 基本上是这样的:Javascript 使用两个数据数组重复ng,javascript,angularjs,Javascript,Angularjs,更新。我将数据存储在一个元组数组中:称为$scope.unique。 基本上是这样的: [["Chris Ivory", "Alfred Morris"], ["CJ", "DJAX"], ["DJ", "CX"]["Willie", "Fred]]. 元组数组可以是无限长的。我想做的是得到每一个的前两个,然后向上迭代两次,直到到达末尾 <div class="text-center" ng-repeat="value in unique" ($index + 2)>
[["Chris Ivory", "Alfred Morris"], ["CJ", "DJAX"], ["DJ", "CX"]["Willie", "Fred]].
元组数组可以是无限长的。我想做的是得到每一个的前两个,然后向上迭代两次,直到到达末尾
<div class="text-center" ng-repeat="value in unique" ($index + 2)>
{{value[0]}} for {{value[1]}}
</div>
{{value[0]}对于{{value[1]}
你为什么不这么做
JS:
HTML:
您可以这样做:
<div ng-if="$index%2 == 0" class="text-center" ng-repeat="value in unique">
{{value[0]}} for {{value[1]}}
</div>
{{value[0]}对于{{value[1]}
我没有创建元组数组,而是创建了一个嵌套在外部数组中的四个值的数组 这就是成功的原因:
<li style="list-style-type: none;">
<div class="text-center" ng-repeat="value in unique">
{{value[0]}} and {{value[1]}} for {{value[2]}} and {{value[3]}}
</div>
</li>
{{value[0]}和{{value[1]}用于{{value[2]}和{{value[3]}
预期产量:
首先显示您的代码,请务必更新以包含我的代码。我尝试了多种方法来创建您试图达到的输出,但我得出的结论是,您需要在JavaScript中重新构造数据。如果不为
ng repeat
编写自定义替换项,则无法更改它的迭代方式,并且如果试图通过使用ng if
和$index
来限制显示内容,则只会得到大量空HTML元素。@Claies,如果他将ngIf放在repeated div上,它将被删除,但是是的,这仍然是在浪费ngRepeat的时间(它将迭代并按unique.length克隆),在编译ngIf并删除元素之后,我同意自定义指令应该是好的。
<div ng-if="$index%2 == 0" class="text-center" ng-repeat="value in unique">
{{value[0]}} for {{value[1]}}
</div>
<li style="list-style-type: none;">
<div class="text-center" ng-repeat="value in unique">
{{value[0]}} and {{value[1]}} for {{value[2]}} and {{value[3]}}
</div>
</li>