我无法使我的 angular 6 *ngIf 语句起作用
I can't get my angular 6 *ngIf statement to work
我似乎无法使 *ngIf 语句起作用。我错过了什么吗?
我已将 *ngIf 语句包含在 div 中,然后添加了一个
标记以在没有任何 posts/bookings 的情况下显示消息。请帮助:)
<div class="container">
<div class="row">
<div class="col-6">
<h4>Bookings</h4>
</div>
<span class="col-6">
<button
class="btn btn-primary float-right btn-sm"
routerLinkActive="active"
routerLink="/createBooking">
New Booking</button>
</span>
</div>
<hr>
<div class="row" *ngIf="bookings.length > 0">
<div class="col-12">
<a
href="#"
class="list-group-item clearfix"
*ngFor="let booking of bookings">
<div class="float-left">
<p class="list-group-item-text"
>{{ booking.bookingDate }}
<br>
{{ booking.clientName }}
<br>
{{ booking.projectTitle }}
<br>
${{ booking.rate }}
</div>
</a>
</div>
<p *ngIf="bookings.length <= 0">No bookings added yet!</p>
</div>
</div>
您的 *ngIf
看起来像这样:
<div class="row" *ngIf="bookings.length > 0">
在此 div
内部,您有一个嵌套的 *ngIf
,如下所示:
<p *ngIf="bookings.length <= 0">No bookings added yet!</p>
现在,想象一下您所拥有的以下简化版本:
<div class="row" *ngIf="bookings.length > 0">
<p *ngIf="bookings.length <= 0">No bookings added yet!</p>
</div>
看这个就清楚了,当bookings.length
不是> 0
的时候,顶层的div
是不会渲染的。如果顶级 div
没有被渲染,它的子级 p
不可能被渲染,因为它在 div
的 内部 不是正在渲染:bookings.length
不能是 both > 0 和 <= 0,所以永远不会渲染 p
元素。
我似乎无法使 *ngIf 语句起作用。我错过了什么吗? 我已将 *ngIf 语句包含在 div 中,然后添加了一个
标记以在没有任何 posts/bookings 的情况下显示消息。请帮助:)
<div class="container">
<div class="row">
<div class="col-6">
<h4>Bookings</h4>
</div>
<span class="col-6">
<button
class="btn btn-primary float-right btn-sm"
routerLinkActive="active"
routerLink="/createBooking">
New Booking</button>
</span>
</div>
<hr>
<div class="row" *ngIf="bookings.length > 0">
<div class="col-12">
<a
href="#"
class="list-group-item clearfix"
*ngFor="let booking of bookings">
<div class="float-left">
<p class="list-group-item-text"
>{{ booking.bookingDate }}
<br>
{{ booking.clientName }}
<br>
{{ booking.projectTitle }}
<br>
${{ booking.rate }}
</div>
</a>
</div>
<p *ngIf="bookings.length <= 0">No bookings added yet!</p>
</div>
</div>
您的 *ngIf
看起来像这样:
<div class="row" *ngIf="bookings.length > 0">
在此 div
内部,您有一个嵌套的 *ngIf
,如下所示:
<p *ngIf="bookings.length <= 0">No bookings added yet!</p>
现在,想象一下您所拥有的以下简化版本:
<div class="row" *ngIf="bookings.length > 0">
<p *ngIf="bookings.length <= 0">No bookings added yet!</p>
</div>
看这个就清楚了,当bookings.length
不是> 0
的时候,顶层的div
是不会渲染的。如果顶级 div
没有被渲染,它的子级 p
不可能被渲染,因为它在 div
的 内部 不是正在渲染:bookings.length
不能是 both > 0 和 <= 0,所以永远不会渲染 p
元素。