En Angular, los componentes son las piezas fundamentales de la interfaz de usuario. Cada componente encapsula una parte de la interfaz y su lógica asociada. En esta sección, aprenderemos cómo crear y utilizar componentes en Angular.
- ¿Qué es un Componente?
Un componente en Angular es una clase que interactúa con una vista HTML a través de un decorador @Component
. Los componentes son responsables de manejar la lógica de la aplicación y la presentación de la interfaz de usuario.
Estructura de un Componente
Un componente típico en Angular consta de:
- Clase TypeScript: Define la lógica del componente.
- Decorador
@Component
: Proporciona metadatos sobre el componente. - Plantilla HTML: Define la estructura de la interfaz de usuario.
- Estilos CSS: Define la apariencia del componente.
- Creación de un Componente
2.1. Usando Angular CLI
Angular CLI (Command Line Interface) es una herramienta poderosa que facilita la creación de componentes. Para crear un componente, utilizamos el siguiente comando:
Por ejemplo, para crear un componente llamado mi-componente
:
Este comando generará los siguientes archivos:
mi-componente.component.ts
: Clase del componente.mi-componente.component.html
: Plantilla del componente.mi-componente.component.css
: Estilos del componente.mi-componente.component.spec.ts
: Archivo de pruebas del componente.
2.2. Manualmente
También podemos crear un componente manualmente. A continuación, se muestra cómo hacerlo paso a paso.
Paso 1: Crear la Clase del Componente
Primero, creamos un archivo TypeScript para la clase del componente. Por ejemplo, mi-componente.component.ts
:
import { Component } from '@angular/core'; @Component({ selector: 'app-mi-componente', templateUrl: './mi-componente.component.html', styleUrls: ['./mi-componente.component.css'] }) export class MiComponenteComponent { titulo: string = 'Hola, Angular!'; }
Paso 2: Crear la Plantilla HTML
Luego, creamos un archivo HTML para la plantilla del componente. Por ejemplo, mi-componente.component.html
:
Paso 3: Crear los Estilos CSS
A continuación, creamos un archivo CSS para los estilos del componente. Por ejemplo, mi-componente.component.css
:
Paso 4: Registrar el Componente en un Módulo
Finalmente, registramos el componente en un módulo de Angular. Por ejemplo, en app.module.ts
:
import { NgModule } from '@angular/core'; import { BrowserModule } from '@angular/platform-browser'; import { AppComponent } from './app.component'; import { MiComponenteComponent } from './mi-componente/mi-componente.component'; @NgModule({ declarations: [ AppComponent, MiComponenteComponent ], imports: [ BrowserModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }
- Uso del Componente
Para utilizar el componente en una plantilla, simplemente usamos su selector. Por ejemplo, en app.component.html
:
- Ejercicio Práctico
Ejercicio 1: Crear un Componente de Bienvenida
- Objetivo: Crear un componente llamado
bienvenida
que muestre un mensaje de bienvenida. - Pasos:
- Usa Angular CLI para generar el componente.
- Modifica la clase del componente para incluir una propiedad
mensaje
con el valor "¡Bienvenido a Angular!". - Actualiza la plantilla HTML para mostrar el mensaje.
- Usa el componente en
app.component.html
.
Solución
- Generar el componente:
- Modificar la clase del componente (
bienvenida.component.ts
):
import { Component } from '@angular/core'; @Component({ selector: 'app-bienvenida', templateUrl: './bienvenida.component.html', styleUrls: ['./bienvenida.component.css'] }) export class BienvenidaComponent { mensaje: string = '¡Bienvenido a Angular!'; }
- Actualizar la plantilla HTML (
bienvenida.component.html
):
- Usar el componente en
app.component.html
:
- Conclusión
En esta sección, hemos aprendido cómo crear componentes en Angular utilizando Angular CLI y manualmente. También hemos visto cómo registrar y utilizar componentes en una aplicación Angular. Los componentes son fundamentales para construir aplicaciones modulares y reutilizables en Angular. En la próxima sección, exploraremos las plantillas de componentes en mayor detalle.
Curso de Angular
Módulo 1: Introducción a Angular
- ¿Qué es Angular?
- Configuración del Entorno de Desarrollo
- Arquitectura de Angular
- Primera Aplicación Angular
Módulo 2: Componentes de Angular
- Entendiendo los Componentes
- Creación de Componentes
- Plantillas de Componentes
- Estilos de Componentes
- Interacción entre Componentes
Módulo 3: Enlace de Datos y Directivas
- Interpolación y Enlace de Propiedades
- Enlace de Eventos
- Enlace de Datos Bidireccional
- Directivas Incorporadas
- Directivas Personalizadas
Módulo 4: Servicios e Inyección de Dependencias
- Introducción a los Servicios
- Creación y Uso de Servicios
- Inyección de Dependencias
- Inyectores Jerárquicos
Módulo 5: Enrutamiento y Navegación
Módulo 6: Formularios en Angular
- Formularios Basados en Plantillas
- Formularios Reactivos
- Validación de Formularios
- Formularios Dinámicos
Módulo 7: Cliente HTTP y Observables
- Introducción al Cliente HTTP
- Realizando Solicitudes HTTP
- Manejo de Respuestas HTTP
- Uso de Observables
- Manejo de Errores
Módulo 8: Gestión de Estado
- Introducción a la Gestión de Estado
- Uso de Servicios para la Gestión de Estado
- NgRx Store
- NgRx Effects
- NgRx Entity
Módulo 9: Pruebas en Angular
- Pruebas Unitarias
- Pruebas de Componentes
- Pruebas de Servicios
- Pruebas de Extremo a Extremo
- Simulación de Dependencias
Módulo 10: Conceptos Avanzados de Angular
- Angular Universal
- Optimización del Rendimiento
- Internacionalización (i18n)
- Pipes Personalizados
- Animaciones en Angular