⊗jsagPmRtCR 95 of 97 menu

Route figlie in Angular

Può succedere che in un componente che è già coinvolto nel routing, ci siano anche componenti figli. Possiamo fare in modo che anche questi componenti figli vengano visualizzati tramite il routing.

Ad esempio, supponiamo di avere un componente Aaaa. Vi accediamo tramite l'URL /aaaa/. Creiamo altri due componenti figli: Chix e Chiy. Li visualizzeremo all'interno della vista del componente Aaaa. Aaaa avrà il suo tag router-outlet, in cui, a seconda dell'URL, verrà visualizzato un componente figlio o l'altro.

Quindi, implementiamo quanto descritto.

Creiamo il primo componente figlio:

ng generate component chix

Creiamo il secondo componente figlio:

ng generate component chiy

Scriviamo le route figlie separate:

let childRoutes: Routes = [ { path: 'chix', component: ChixComponent }, { path: 'chiy', component: ChiyComponent }, ];

Aggiungiamole alla route del componente Aaaa come figlie:

const appRoutes: Routes = [ { path: 'aaaa', component: AaaaComponent, children: childRoutes }, ];

Il percorso dalla route del componente genitore sarà l'inizio del percorso per quello figlio. Ciò significa che i componenti figli saranno accessibili ai seguenti URL: /aaaa/chix e /aaaa/chiy.

Ora configuriamo il componente Aaaa. Importiamo il tag per il routing:

import { RouterOutlet } from '@angular/router';

Inseriamolo nel decoratore:

@Component({ ...... imports: [RouterOutlet], ...... })

Inseriamo il tag nella vista:

<p>funziona</p> <router-outlet></router-outlet>

Ora sarà possibile accedere ai componenti figli tramite i loro URL e questi componenti saranno visualizzati. Provate!

Implementate il funzionamento descritto dei componenti figli.

Create dei link per alternare la visualizzazione dei componenti figli.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta