[英]ngIf else with angular Ionic template
我試圖了解 ngIf/else 是如何工作的,也許這很愚蠢,但我不明白。 基本上,如果我的數組已滿(這工作正常),我需要打印一些內容,如果為空(這不起作用),則需要打印一些其他內容。 這是我的數組,其中包含來自過濾后的 json 數組的元素。
public gbrumdatafiltered : Array<any> = [];
這是代碼。 正如我所說,當 gbrumdatafiltered 中有數據時,它會打印“true”,因此條件有效,但如果數組為空(如屏幕截圖所示),則不會發生任何事情。
<ion-card *ngFor="let gbrumd of gbrumdatafiltered">
<div *ngIf="gbrumd?.length; then gbrumdknown; else gbrumdunknown"></div>
<ng-template #gbrumdknown>true</ng-template>
<ng-template #gbrumdunknown>false</ng-template>
</ion-card>
我什至嘗試過一些變化,例如:
<div *ngIf="gbrumdatafiltered?.length; then gbrumdknown; else gbrumdunknown"></div>
--
<div *ngIf="gbrumdatafiltered?.length; then gbrumdknown; else gbrumdunknown"></div>
--
<div *ngIf="gbrumdatafiltered.length > 0; then gbrumdknown; else gbrumdunknown"></div>
但仍然不起作用
這是 cconsole.log(this.gbrumdatafiltered); 命令
所以,數組是空的。
你只是在這里有一個邏輯錯誤,你需要更高一點的條件......
<ng-container*ngIf="gbrumdatafiltered?.length; then gbrumdknown; else gbrumdunknown">
</ng-container>
<ng-template #gbrumdknown>
<ion-card *ngFor="let gbrumd of gbrumdatafiltered">
<div>true</div>
</ion-card>
</ng-template>
<ng-template #gbrumdunknown>
<ion-card *ngIf="submitted">
<div>false</div>
</ion-card>
</ng-template>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.