Routing

Pour naviguer entre les différentes vues, on utilise le router Angular.

Mettre en place le routeur

  1. Créer un module app-routing qui importe le router et le lie à un objet Routes — il contiendra les spécifications des routes.

    app/app-routing.module.ts

     import { NgModule } from '@angular/core';
     import { RouterModule, Routes } from '@angular/router';
    
     const routes: Routes = []
    
     @NgModule({
       imports: [
         RouterModule.forRoot(routes)
       ],
       exports: [
         RouterModule
       ]
     })
     export class AppRoutingModule { }
     export const routingComponents = [];
    
  2. Inclure le module de routing dans le module racine

    app/app.module.ts

     import { NgModule } from '@angular/core';
     import { BrowserModule } from '@angular/platform-browser';
     +import { AppRoutingModule, routingComponents } from './app-routing.module';
    
     import { AppComponent } from './app.component';
    
     @NgModule({
       declarations: [
         AppComponent,
     +   routingComponents
       ],
       imports: [
         BrowserModule,
     +   AppRoutingModule
       ],
       providers: [],
       bootstrap: [AppComponent]
     })
     export class AppModule { }
    
  3. Dans le fichier index.html, ajouter le tag base:

     <!DOCTYPE html>
     <html>
       <head>
         <meta charset="UTF-8">
         <title>Routing demo</title>
     +   <base href="/">
    
  4. Dans le composant racine, ajouter un tag router-outlet. Il sera remplacé par le composant correspondant à la route en cours.

    app/app.component.ts:

     @Component({
       selector: 'app-root',
       template: `<h1>Hello World</h1>
                  <router-outlet></router-outlet>`
     })
     export class AppComponent {
     }
    

Configurer les routes

Composants

Configuration


Utiliser des paramètres


Routes enfant


Lazy routes


Redirection