angular - 在 Angular 中,在 *ngIf 中使用 *ngFor 不起作用
问题描述
所以我有一些代码
<div class="square positive" *ngFor="let square of getEquipmentHealth()"></div>
这会一个接一个地打印框,但是如果我添加一个 if 条件,
<div *ngIf="getEquipmentHealthNumber() <= 3" >
<div class="square positive" *ngFor="let square of getEquipmentHealth()"></div>
</div>
这会打印一个在另一个下面的框
我是 Angular 新手,可能缺少一些简单的东西。有谁知道为什么会这样。任何帮助将不胜感激。
解决方案
当您使用ngIf
指令添加容器时,附加div
可能会导致样式规则以不同方式应用于内部div
。要消除外部div
,请使用 Angular ng-container
:
<ng-container *ngIf="getEquipmentHealthNumber() <= 3" >
<div class="square positive" *ngFor="let square of getEquipmentHealth()"></div>
</ng-container>
推荐阅读
- python - 在具有多个 python 版本的 Ubuntu 18.04 中卸载所有 Python 包
- python - Python BigQuery:插入内容为数字的字符串失败
- c - C 如何正确存储 sqlite3 行数据?
- ubuntu-16.04 - Ejabberd 19 在安装时抛出“deps/.got”异常
- javascript - 如何提交从php生成的多个表单
- automated-tests - 如何在 Visual Studio 2019 中单独运行选定的测试
- yammer - 通过 Yammer 上的 API 发布富文本消息
- wordpress - plesk 子文件夹/blog wordpress nginx 404 未找到
- sql-server - 在同一台计算机上从 SQL Server Express 切换到 SQL Server Developer 版本
- matlab - 如何将 .mat 文件转换为 netCDF 文件?