Angular 9 *ngFor 循环跳过数组中的某些对象

Angular 9 *ngFor loop skipping some objects in an array

我试图在每 table 行的四列中显示对象数组的内容:

现在这只是显示索引以帮助我了解发生了什么。

<tr *ngFor="let object of myObjects; let i = index">
  <div *ngIf="i % 4 == 0">
    <td *ngIf="i % 1 == 0">{{ i }}</td>
    <td *ngIf="i % 2 == 0">{{ i+1 }}</td>
    <td *ngIf="i % 3 == 0">{{ i+2 }}</td>
    <td *ngIf="i % 4 == 0">{{ i+3 }</td>
  </div>
</tr>

当我查看页面时,它没有显示所有对象。我看到这样的东西:

0 1 2 3
4 5 7
8 9 11

我的问题是,为什么它会跳过一些对象?

因为您的逻辑(使用模 === 0)告诉它跳过它们。

这是您的逻辑,但控制台会记录结果。

let foo = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
foo.forEach(item => { console.log("index is ", item, "and its % 4 === 0", item % 4 === 0, "item % 1 === 0", item % 1 === 0, "item % 2 === 0", item % 2 ===0, "item % 3 === 0", item % 3 === 0, "item % 4 === 0 (again)", item % 4 === 0)
})