如果有结果,则显示标题

时间:2015-04-13 17:24:15

标签: angularjs

我有一些记录,每个记录都有一个optionnal字段infoAdditionnelle,它是可选的。

我正在做的是对我的记录进行循环,并且如果title的值存在,则为每条记录显示infoAdditionnelleinfoAdditionnelle

在某些情况下,infoAdditionnelle的所有值在所有记录中都是空的,在这种情况下,我不希望显示该部分的标题

请参阅代码:http://plnkr.co/edit/JdTeBcjnvvWgXqI0xn8q?p=preview

在此代码中,所有infoAdditionnelle都是空的,所以在这种情况下,我想隐藏“我的标题”,是否可能?

非常感谢

2 个答案:

答案 0 :(得分:1)

您可以使用角度过滤器实现此目的,如果所有infoAdditionnelle值都为空,则不会显示标题。

<强>标记

<p ng-if="(records|filter: {infoAdditionnelle: ""}: true).length == records.length">
My title</p>

Working Plunkr此处

答案 1 :(得分:0)

您可以将ng-show="info"添加到标题出现的元素,然后在控制器中的for上执行简单的records循环,将info设置为{{1如果true对于任何记录都大于零。否则infoAdditionnelle.length将保持为假,您的标题将不会显示。

注意:info也可以取代ng-if。鉴于ng-show会将您的标题元素设置为ng-showdisplay: none会将其从DOM中完全删除。在这个例子中,不应该以任何方式产生太大的差异,而只是一些额外的信息来促进你的理解。

HTML:

ng-if

控制器:

<p class="formtitle" ng-show="info">My title</p>

请参阅我的plnkr here