Implementación de Routing en Angular: Creación de Componentes y Páginas
Resumen
Todas las aplicaciones front-end van a necesitar de múltiples páginas, las cuales serán identificadas por una ruta. Veamos cómo puedes relacionar rutas y componentes en Angular.
Rutas y Componentes
Puedes enlazar componentes a las rutas para cuando ingreses a X ruta, se muestre Y componente.
1. Creando componentes
Comienza creando un par de componentes de prueba. Apóyate del CLI de Angular de la siguiente manera:
ng g c components/about
ng g c components/catalogo
2. Creando el routing
Al utilizar el comando ng new <project-name> Angular nos pregunta lo siguiente:
Would you like to add Angular routing? (y/N)
Si contestamos que sí, creará el siguiente archivo junto con el módulo principal de tu app.
ng g c pages/home
ng g c pages/notFound
ng g c pages/category
ng g c pages/mycart
ng g c pages/login
ng g c pages/register
ng g c pages/recovery
ng g c pages/profile
Por si depronto alguien quiere ejecutar y crear todos los componentes en un solo comando, aqui lo dejo
ng g c pages/home && ng g c pages/notFound && ng g c pages/category && ng g c pages/mycart && ng g c pages/login && ng g c pages/register && ng g c pages/recovery && ng g c pages/profile
Les recuerdo que pueden tener conflictos a la hora de pasar su proyecto de Angular si tienen la versión global de 13, Angular tienen información oficial de como pasar la versión de un proyecto a otra en este enlace
Cuando pasamos el offset en 0, el if lo toma como false por lo tanto no adjunta los params en la petición.
// SOLUCIÓN en products.service.ts, // colocar offset con un valor por defecto y modificar el if.getAll(limit?:number, offset:number=0){let params =newHttpParams();if(limit){ params = params.set('limit', limit); params = params.set('offset', offset);}// ...}
iba en la clase 19 y volví a esta porque con tanto tema se me olvidaba como era que funcionaba bien el router-outlet. Recomiendo mucho llevar apuntes escritos para este curso <3
Hola, para correr la generación de las paginas en un solo comando lo hacer de la siguiente manera:
ng g c pages/home;
ng g c pages/notFound;
ng g c pages/category;
ng g c pages/mycart;
ng g c pages/login;
ng g c pages/register;
ng g c pages/recovery;
ng g c pages/profile;
Para crear una ruta, se deben seguir los siguientes pasos:
Generar las páginas en la carpeta pages utilizando el siguiente comando en PowerShell:
powershell
Copy code
Generamos las páginas en la carpeta pages
ng g c pages/home
En el archivo app.component.html, se debe agregar el router-outlet, que es el componente que nos permitirá manejar las rutas en el proyecto:
html
Copy code
<router-outlet></router-outlet>
Las páginas generadas se almacenarán en app.module.ts. A partir de ahí, podemos copiar la ruta desde
ng g c pages/home && ng g c pages/notFound && ng g c pages/category && ng g c pages/mycart && ng g c pages/login && ng g c pages/register && ng g c pages/recovery && ng g c pages/profile
Hola les dejo el script de creacion de componentes en una sola linea
ng g c pages/home && ng g c pages/notFound && ng g c pages/category && ng g c pages/mycart && ng g c pages/login && ng g c pages/register && ng g c pages/recovery && ng g c pages/profile
Por si alguien quiere crear todos los componentes con un solo comando solo copien el siguiente.
ng g c pages/home && ng g c pages/notFound && ng g c pages/category && ng g c pages/mycart && ng g c pages/login && ng g c pages/register && ng g c pages/recovery && ng g c pages/profile && clear && echo "Tus componentes fueron creados!!"