AngularJS : "ng-repeat" 中的 IF 语句?

AngularJS : IF Statement inside "ng-repeat"?

我正在使用 AngularJS v1.2.9

ng-repeat 中,我如何使用检查对象的值并根据条件执行操作?

英文,类似:

if `X` is not null, then show `X`. Is it possible?

这是我的 ng-repeat 骨架:

<li ng-repeat="r in results">
    <div>{{ r.title }}</div>
    <div>{{ r.location }}</div>
    <!--
    if ( r.date!=="null" ) {
        <div>{{ r.date }}</div>
    } else {
        <div>Date not confirmed yet.</div>
    }
    -->
</li>

如果不为空,我需要显示 r.date。如果它是空的,那我说点别的。

请帮忙。谢谢大家

更新

问题不是很清楚,所以这就是你想要的,只要有 ng-bind 指令就位。如果内容比较大,可以改用下面@JustOneMoreQuestion推荐的方式

<li ng-repeat="r in results" ng-if="r.date">
    <div ng-bind="r.date ? r.date : 'Date not confirmed yet.'"></div>
</li>

您可以使用 ng-if

轻松完成
<li ng-repeat="r in results" ng-if="r.date">
    <!--
    if ( r.date!=="null" ) {
        {{ r.date }}
    }
    -->
</li>

或者寻找一个过滤器来过滤掉那些将创建一个包含 date 的元素集合。

<li ng-repeat="r in results| filter: { date: '' }">
    <!--
    if ( r.date!=="null" ) {
        {{ r.date }}
    }
    -->
</li>
<li ng-repeat="r in results">
  <!-- If r.date contains a value, show it -->
  <span ng-if="r.date">{{r.date}}</span>
  <!-- If r.date does not contain a value show placeholder text -->
  <span ng-if="!r.date">Date not confirmed yet.<span>
</li>

另见 What does an exclamation mark before a variable mean in JavaScript

检查这个,

<li ng-repeat="r in results" >
    <div data-ng-if="r.date !== 'null'">
        Your Date
    </div>
    <div data-ng-if="r.date == 'null'">
        Date not confirmed yet
     </div>
 </li>