2014-01-25 78 views
20

嘿,我有这样的一段代码:角JS - NG-重复和循环条件

<div ng-repeat="i in values"> 
{{i}} 
</div> 

它的工作原理,但我想提出额外条件,循环像里面:

<div ng-repeat="i in values"> 
{{i}} 
if(i !== 0){ 
<div></div> 
} 
</div> 

我怎样才能做到这一点?

回答

52

使用ng-if(或ng-show):

<div ng-repeat="i in values"> 
    <div ng-if="i !== 0"></div> 
</div> 

附属的元素,这将决定是否显示与否。

ng-if can be found here的文档。

但是,如果您只想循环使用第一个或最后一个项目,则还可以使用$first$last属性ng-repeat。这些是documented with ng-repeat。并且可以使用这样的:

<div ng-repeat="i in values"> 
    <div ng-if="$first"></div> 
</div> 
+2

NG-如果比NG-表现出更好的解决方案,因为NG-如果修改DOM。 ng-show只显示/隐藏元素。 – RaviH

+0

@RaviH是的,这就是为什么这个例子使用ng-if。但是,它们都是基于您尝试实现的有效解决方案。 –

+0

@DavinTryon嘿谢谢你,你知道吗?我该如何在这个循环中增加一个增量变量? :P我想只显示一个div内循环,例如,如果增量%3 === 0,但我不知道如何:( – sbaaaang

9

使用ng-ifstatement

<div ng-repeat="i in values"> 
    {{i}} 
    <div ng-if="i !== 0"></div> 
</div>