我有这段代码应该在变量blockusers不为空时显示数据(有效),但是当其为空时应显示Nought,nil,nada,nothing,zero,zilch和zip; ...而且我看不到任何地方的错误。
<div class="col-lg-9" *ngIf="blockusers; else zipZeroResults">
I'm getting results and I will show them!
</div>
<ng-template #zipZeroResults>
Nought, nil, nada, nothing, zero, zilch and zip.
</ng-template>
感谢您的帮助
答案 0 :(得分:1)
您正在对数组进行真实检查,如果数组引用本身不是true
或null
,则该数组将始终返回undefined
。如果数组为空(无元素),它甚至会返回true。
您的真实性检查应在数组的length
上进行。然后,如果数组为空(长度= 0),它将对表达式的计算结果为false,这就是您所期望的。
*ngIf="blockusers?.length; else zipZeroResults"
这将检查长度,但如果数组本身未定义或为空(使用Safe Navigation Operator),则不会引发错误。