Routing
En la mayoría de las aplicaciones, llega un punto en que se necesita navegar entre varias páginas o secciones. En Angular, el Router permite gestionar esta navegación y ofrece una forma sencilla de configurar y mostrar diferentes vistas en función de la URL actual. Este proceso, llamado routing, mejora la experiencia de usuario al cargar solo las vistas necesarias y facilita una navegación fluida.
En este ejemplo, configuraremos el Router de Angular paso a paso para habilitar la navegación entre vistas en nuestra aplicación.
Paso 1: Crear un Archivo de Rutas (app.routes.ts
)
Primero, crearemos un archivo llamado app.routes.ts
en el que configuraremos las rutas de la aplicación. Este archivo mantendrá un array de objetos de rutas, llamado routes
, que define cómo se debe redirigir o cargar cada URL.
import { Routes } from '@angular/router';
export const routes: Routes = [];
En este archivo, routes
es un array vacío por ahora, pero aquí se agregarán las rutas de la aplicación.
Paso 2: Configurar el Proveedor de Rutas
Ahora, en el archivo app.config.ts
, configuraremos el proveedor del Router para Angular. Esto le indica a Angular que usaremos las rutas definidas en app.routes.ts
para la navegación.
import { ApplicationConfig } from '@angular/core';
import { provideRouter } from '@angular/router';
import { routes } from './app.routes';
export const appConfig: ApplicationConfig = {
providers: [provideRouter(routes)],
};
En este código, provideRouter(routes)
conecta el Router de Angular con las rutas especificadas en app.routes.ts
. Esto configura el Router en toda la aplicación, permitiendo manejar la navegación.
Paso 3: Usar RouterOutlet
en el Componente Principal
Para indicar en qué parte de la vista se deben mostrar las rutas cargadas, usaremos RouterOutlet
, una directiva de Angular que actúa como un marcador de posición para el contenido en función de la ruta actual.
Actualicemos la plantilla de AppComponent
para que incluya RouterOutlet
y algunos enlaces de navegación:
import { RouterOutlet } from '@angular/router';
@Component({
selector: 'app-root',
template: `
<nav>
<a href="/">Inicio</a> |
<a href="/user">Usuario</a>
</nav>
<router-outlet></router-outlet>
`,
standalone: true,
imports: [RouterOutlet],
})
export class AppComponent {}
Aquí, <router-outlet></router-outlet>
se colocará en el lugar donde queremos que se muestren las vistas de las rutas. Los enlaces <a href="/">Inicio</a>
y <a href="/user">Usuario</a>
permiten navegar entre las páginas definidas en app.routes.ts
.
Ahora tu aplicación está configurada para usar el Router de Angular. La navegación entre páginas es sencilla y eficaz gracias a RouterOutlet
, que muestra el contenido correspondiente a la URL actual.