Angularjs在ng-repeat中的条件显示

时间:2016-04-28 03:39:53

标签: angularjs angularjs-ng-repeat

这可能是一个愚蠢的问题。但我希望你能帮助我。我正在做这样的事情:

<div ng-repeat="item in list" class="display-item">
   <ng-include src="mytemplate.html"></ng-include>

   <div ng-if="($index%2) == 0">
      <p>An inserted content when index is an even number.</p>
   </div>
</div>

现在这个有用了。当我在所有设备中对页面进行响应时,问题就开始了,因为您在我插入p标记时看到它是在父div标记内创建的,类为display-item。我想要做的是把它放在div标签之外,所以当屏幕较小时,p标签不会受到父标签的影响,反之亦然。所以像这样:

<div ng-repeat="item in list" class="display-item">
   <ng-include src="mytemplate.html"></ng-include>
</div>
<div ng-if="($index%2) == 0">
   <p>An inserted content when index is an even number.</p>
</div>

现在上面的代码$index的问题在代码的那一部分是未定义的,我知道ng-repeat将在转到第二个div之前完成迭代。

提前致谢!

2 个答案:

答案 0 :(得分:4)

使用ng-repeat-start and ng-repeat-end

可以轻松完成此操作

试试这样:

<div ng-repeat-start="item in list" class="display-item">
   <ng-include src="mytemplate.html"></ng-include>
</div>
<div ng-repeat-end ng-if="($index%2) == 0">
   <p>An inserted content when index is an even number.</p>
</div>

答案 1 :(得分:0)

@Jed,你能在外部div的ng-if div上放一个类标签吗?说

<div ng-if="($index%2)" class="outer-div-you-want">

只是想一想。

相关问题