Importar el RouterModule y Routes:
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { HomeComponent } from './home/home.component';
import { AboutComponent } from './about/about.component';
const routes: Routes = [
{ path: '', redirectTo: '/home', pathMatch: 'full' },
{ path: 'home', component: HomeComponent },
{ path: 'about', component: AboutComponent },
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
import { AppRoutingModule } from './app-routing.module';
@NgModule({
declarations: [
// tus componentes
],
imports: [
AppRoutingModule,
// otros módulos
],
bootstrap: [AppComponent]
})
export class AppModule { }
router-outlet
El router-outlet es una directiva que actúa como un marcador de posición en la plantilla de la aplicación donde se renderizarán los componentes asociados a las rutas definidas en el RoutingModule. Cada vez que se navega a una ruta específica, Angular reemplaza el contenido del router-outlet con el componente correspondiente.
Agregar router-outlet en la plantilla:
En la app.component.html, colocar el router-outlet donde quieras que aparezcan los componentes de las rutas:
<nav>
<a routerLink="/home">Home</a>
<a routerLink="/about">About</a>
</nav>
<router-outlet></router-outlet>
Cuando el usuario hace clic en los enlaces del menú, Angular actualizará automáticamente el contenido dentro del router-outlet con el componente correspondiente, sin recargar la página.
Parámetros de Ruta y router-outlet
El router-outlet también puede trabajar con rutas que contienen parámetros. Por ejemplo, si tienes una ruta que muestra detalles de un usuario basado en su ID, puedes definirla así:
const routes: Routes = [
{ path: 'user/:id', component: UserDetailComponent },
];
Y en el router-outlet, Angular cargará UserDetailComponent cuando se navegue a /user/1, por ejemplo.