Angular ngFor. Почему массив выводится в консоль несколько раз?

Ксть код:

<div *ngFor="let item of items()">some item</div>

items() {
    console.log(Array.from(Array(10).keys()));
    return Array.from(Array(10).keys());
}

Console.log почему-то выводит массив в консоли несколько раз. https://stackblitz.com/edit/angular-lstpcw


Ответы (1 шт):

Автор решения: Валера Битковский

Функция items() будет вызыватся при каждом изменения компонента. Лучше всего перенсти эту логику в ngOnInit

public items;

public ngOnInit(): void {
    console.log(Array.from(Array(10).keys()));
    this.items = Array.from(Array(10).keys());
}
→ Ссылка