Chamada de componente em loop no Angular
Também é possível chamar um componente em um loop, passando diferentes parâmetros para ele através de atributos. Vamos tentar na prática. Suponha que temos a seguinte propriedade com usuários:
interface User {
name: string,
age: number
}
class UserComponent {
public users: User[] = [
{
name: 'user1',
age: 25,
},
{
name: 'user2',
age: 26,
},
{
name: 'user3',
age: 27,
},
];
}
Vamos iterar sobre os usuários com um loop, em cada iteração chamando um componente filho e passando o nome e a idade como parâmetros:
<div *ngFor="let user in users">
<user-data [name]="user.name" [age]="user.age"></user-data>
</div>
Dado o seguinte array de produtos:
interface Product {
name: string,
cost: number
}
class ProductComponent {
public products: Product[] = [
{
name: 'prod1',
cost: 100,
},
{
name: 'prod2',
cost: 200,
},
{
name: 'prod3',
cost: 300,
},
];
}
Itere sobre este array com um loop, criando a cada vez um novo componente de produto.