html - *ngFor 仅打印数组的第一个元素
问题描述
我正在使用这段代码:
<div *ngIf="gamedata.notOver" class="columns">
<div class="column has-text-centered" *ngFor="let board of boards; let i = index">
<table class="is-bordered" [style.opacity]="i == player ? 0.5 : 1">
<tr *ngFor="let row of board.tiles; let j = index">
<td *ngFor="let col of row; let k = index" (click)="boardListener($event)" [style.background-color]="col.used ? '' : 'transparent'" [class.win]="col.status == 'win'" [class.fail]="col.status !== 'win'" class="battleship-tile" id="t{{i}}{{j}}{{k}}">
{{ col.value == "1" ? (col.status == "hit" ? "" : "X") : (col.status == "miss" ? "⛶" : (col.status == "hit" ? "" : "")) }}
</td>
</tr>
</table>
<hr>
</div>
</div>
要打印包含 2 个元素的数组数组的第一个元素,我如何选择打印第一个或第二个元素而不打印它们?我需要这样做,因为我必须将它们放在单独的 div 中。
解决方案
我假设引用数组数组的线是电路板之一。
尝试将每个数组包装在具有 ngIf 指令的 ng-content 中,如下所示:
<div class="column has-text-centered" *ngFor="let board of boards; let i = index">
<ng-content *ngIf="i%2 == 0">
INSERT WHAT YOU WANT TO DISPLAY FOR FIRST ARRAY ITEM HERE
</ng-content>
<ng-content *ngIf="i%2 != 0">
INSERT WHAT YOU WANT TO DISPLAY FOR SECOND ARRAY ITEM HERE
</ng-content>
</div>
您可能需要重复一些代码,但它应该可以工作。
推荐阅读
- java - 链式反应组件调用
- unit-testing - 使用 Jest 在 Vue 中测试按钮上的触发器单击不起作用
- javascript - 如何将 HTML 片段中的文本写入带有换行符的文本文件?
- office-js - 使用 officejs Exceladd-in 的功能区命令中未显示图像图标
- excel - 尝试连接到网站时,VBA 中是否有解决错误运行时错误“429”的方法?
- python - 在python中重新排列3D数组
- typo3 - HOWTO 将新选项卡和字段添加到 tx_news
- http - 浏览器什么时候执行 CONNECT 方法?
- arrays - 使用 Azure 逻辑应用将 CSV 元素转换为单个数组
- kotlin - 包裹中的 ClassCastException