Aprende a repetir elementos como todo un Capitán 🧑‍✈️⚓

Hola devs 👩‍💻👨‍💻, hoy vamos a abordar un tema súper útil en Angular: los bucles.

Así como un barco recorre el mar parando en varias islas 🏝️, los bucles recorren colecciones de datos, mostrando o procesando cada elemento.

Vamos a ver cómo se hace esto en Angular paso a paso, con ejemplos y emojis para no dormirnos 😴👉😄.


1️⃣ *ngFor en el HTML – El timón del barco 🚢

Imagina que tienes una lista de frutas tropicales 🍍🍌🥭 que quieres mostrar en pantalla. ¡Aquí entra *ngFor al rescate!

// archivo: frutas.component.ts
export class FrutasComponent {
  frutas: string[] = ['Piña 🍍', 'Banano 🍌', 'Mango 🥭'];
}

Y en el HTML:

*ngFor="let fruta of frutas">{{ fruta }}

📌 Explicación:

  • *ngFor recorre cada elemento de frutas.
  • let fruta of frutas crea una variable fruta por cada elemento.
  • {{ fruta }} lo muestra en pantalla.

🧠 ¡Fácil y limpio! Y se ve así:

- Piña 🍍
- Banano 🍌
- Mango 🥭

2️⃣ Bucles en TypeScript – Los motores del barco 🛠️

Ahora supongamos que quieres hacer algo con lógica, como filtrar frutas o convertirlas a mayúsculas.

🧪 Ejemplo con for tradicional:

for (let i = 0; i < this.frutas.length; i++) {
  console.log(`Fruta #${i + 1}: ${this.frutas[i]}`);
}

🧪 Ejemplo con forEach:

this.frutas.forEach((fruta, index) => {
  console.log(`Fruta ${index + 1}: ${fruta.toUpperCase()}`);
});

🧪 Ejemplo con map para transformar:

const frutasEnMayuscula = this.frutas.map(fruta => fruta.toUpperCase());
console.log(frutasEnMayuscula); // ['PIÑA 🍍', 'BANANO 🍌', 'MANGO 🥭']

3️⃣ Bonus: ng-template para más control 🧙‍♂️

Puedes usar ng-template si quieres mostrar un mensaje cuando no haya datos. Ejemplo:

*ngIf="frutas.length > 0; else noHayFrutas">
   *ngFor="let fruta of frutas">{{ fruta }}


 #noHayFrutas>
  No hay frutas para mostrar 🍽️

🧭 Resumen del Capitán

Herramienta ¿Para qué sirve?
*ngFor Mostrar listas en HTML
for Bucle clásico, útil para lógica más compleja
forEach Recorre arrays, sin modificar
map Transforma arrays y devuelve uno nuevo
ng-template Muestra contenido alternativo (como un else)

🚀 ¡Zarpa y practica!

Los bucles son parte del alma de una app dinámica. Ya sea mostrando productos 🛍️, usuarios 👥 o posts 📝, sabrás cómo hacerlos navegar con estilo.