Introducción
En Angular, los componentes son las piezas fundamentales de una aplicación. Cada componente encapsula una parte de la interfaz de usuario y su lógica asociada. En esta lección, aprenderemos cómo crear y utilizar componentes en Angular.
Objetivos
- Comprender la estructura básica de un componente Angular.
- Aprender a generar componentes utilizando Angular CLI.
- Conocer las propiedades y métodos básicos de un componente.
- Entender cómo integrar componentes en una aplicación Angular.
Estructura de un Componente Angular
Un componente en Angular se compone de cuatro partes principales:
- Decorador
@Component: Define el componente y sus metadatos. - Clase del Componente: Contiene la lógica y los datos del componente.
- Plantilla HTML: Define la estructura visual del componente.
- Estilos CSS: Aplica estilos específicos al componente.
Ejemplo Básico de un Componente
import { Component } from '@angular/core';
@Component({
selector: 'app-ejemplo',
template: `
<h1>{{ titulo }}</h1>
<p>{{ descripcion }}</p>
`,
styles: [`
h1 {
color: blue;
}
`]
})
export class EjemploComponent {
titulo: string = 'Hola, Angular!';
descripcion: string = 'Este es un componente de ejemplo.';
}Explicación del Código
- Importación: Importamos el decorador
@Componentdesde el paquete@angular/core. - Decorador
@Component:selector: Define el nombre del componente que se utilizará en las plantillas HTML.template: Define la estructura HTML del componente.styles: Define los estilos CSS específicos para el componente.
- Clase del Componente:
tituloydescripcion: Son propiedades de la clase que se utilizan en la plantilla HTML.
Generar un Componente con Angular CLI
Angular CLI proporciona una forma rápida y sencilla de generar componentes. Utiliza el siguiente comando para crear un nuevo componente:
Por ejemplo, para crear un componente llamado usuario, ejecuta:
Este comando generará los siguientes archivos:
usuario.component.ts: Contiene la clase del componente y el decorador@Component.usuario.component.html: Contiene la plantilla HTML del componente.usuario.component.css: Contiene los estilos CSS del componente.usuario.component.spec.ts: Contiene las pruebas unitarias del componente.
Integrar Componentes en una Aplicación Angular
Para utilizar un componente en una aplicación Angular, sigue estos pasos:
- Declarar el Componente: Asegúrate de que el componente esté declarado en el módulo correspondiente (generalmente
app.module.ts).
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
import { UsuarioComponent } from './usuario/usuario.component';
@NgModule({
declarations: [
AppComponent,
UsuarioComponent
],
imports: [
BrowserModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }- Utilizar el Selector del Componente: Inserta el selector del componente en la plantilla HTML donde desees que aparezca.
Ejercicio Práctico
Ejercicio 1: Crear un Componente de Producto
- Genera un nuevo componente llamado
productoutilizando Angular CLI. - Modifica la clase del componente para que tenga las siguientes propiedades:
nombre: stringprecio: number
- Actualiza la plantilla HTML del componente para mostrar el nombre y el precio del producto.
- Declara el componente en el módulo principal (
app.module.ts). - Utiliza el selector del componente en la plantilla principal (
app.component.html).
Solución
- Generar el componente:
- Modificar la clase del componente:
// producto.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-producto',
templateUrl: './producto.component.html',
styleUrls: ['./producto.component.css']
})
export class ProductoComponent {
nombre: string = 'Laptop';
precio: number = 1200;
}- Actualizar la plantilla HTML:
- Declarar el componente en el módulo principal:
// app.module.ts
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
import { ProductoComponent } from './producto/producto.component';
@NgModule({
declarations: [
AppComponent,
ProductoComponent
],
imports: [
BrowserModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }- Utilizar el selector del componente:
Conclusión
En esta lección, hemos aprendido cómo crear y utilizar componentes en Angular. Los componentes son esenciales para construir aplicaciones modulares y reutilizables. En la próxima lección, exploraremos las plantillas de componentes en mayor detalle.
¡Continúa practicando y experimentando con componentes para dominar su uso en Angular!
Curso de Angular 2+
Módulo 1: Introducción a Angular
- ¿Qué es Angular?
- Configuración del Entorno de Desarrollo
- Tu Primera Aplicación Angular
- Arquitectura de Angular
Módulo 2: Conceptos Básicos de TypeScript
- Introducción a TypeScript
- Variables y Tipos de Datos en TypeScript
- Funciones y Funciones Flecha
- Clases e Interfaces
Módulo 3: Componentes y Plantillas
- Creación de Componentes
- Plantillas de Componentes
- Estilos de Componentes
- Interacción entre Componentes
Módulo 4: Directivas y Pipes
Módulo 5: 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 6: Enrutamiento y Navegación
Módulo 7: Formularios en Angular
- Formularios Basados en Plantillas
- Formularios Reactivos
- Validación de Formularios
- Formularios Dinámicos
Módulo 8: Cliente HTTP y Observables
- Introducción al Cliente HTTP
- Realizando Solicitudes HTTP
- Manejo de Respuestas HTTP
- Uso de Observables
Módulo 9: 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
