Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Konfigurera Routing i Angular | Routing and Navigation in Angular
Introduktion till Angular

bookKonfigurera Routing i Angular

För att allt ska fungera måste du tala om för Angular vilken URL som visar vilken komponent. Detta kallas routing. Låt oss börja!

Huvudfilen för routing

När du skapar en Angular-app med CLI kan du aktivera routing direkt från början — svara bara "Yes" när du får frågan om routing. Angular skapar då de nödvändiga filerna åt dig (vilket vi redan gjorde när vi skapade appen). En av dessa filer är app.routes.ts.

Om du av någon anledning inte har denna fil, oroa dig inte — du kan skapa den själv i projektets rotmapp. Den ska se ut så här:

routes.ts

routes.ts

copy

Denna fil anger vilka rutter som finns i din app och vilka komponenter som ska visas för varje rutt.

Se även till att dina rutter är kopplade i app.config.ts på följande sätt:

config.ts

config.ts

copy

Utan raden provideRouter(routes) kommer Angular inte känna till dina rutter, även om de är definierade i app.routes.ts.

Konfigurera rutter

Nu ska vi lägga till rutter för vår Task Tracker-app. Öppna app.routes.ts och skriv följande kod:

routes.ts

routes.ts

copy

Detta är bara en array av rutter som vi exporterar. Varje rutt är ett objekt med dessa inställningar:

  • path — URL-sökvägen;

  • component — komponenten som visas när du navigerar till den sökvägen.

I vårt fall har vi två rutter:

Huvudsidan som visar listan över uppgifter.

routes.ts

routes.ts

copy

När en användare besöker rotadressen (localhost:4200/), kommer Angular att visa TaskListComponent.

Sidan för uppgiftsdetaljer som visar information om en enskild uppgift:

routes.ts

routes.ts

copy

Här är :id en dynamisk parameter. Angular förstår att :id kan vara vilket värde som helst (som /task/1, /task/42 osv.). Detta värde skickas automatiskt till TaskDetailsComponent, och du kan använda det för att hämta data för just den uppgiften.

Så när en användare går till localhost:4200/task/1 kommer Angular att visa TaskDetailsComponent med detaljer för uppgift nr 1.

Just nu fungerar ingenting ännu eftersom vi bara har definierat rutterna, men vi har inte kopplat dem helt till våra komponenter. Vi gör det i nästa kapitel!

question mark

I vilken fil definieras vanligtvis rutterna i en Angular-applikation?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 6. Kapitel 3

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Awesome!

Completion rate improved to 3.13

bookKonfigurera Routing i Angular

Svep för att visa menyn

För att allt ska fungera måste du tala om för Angular vilken URL som visar vilken komponent. Detta kallas routing. Låt oss börja!

Huvudfilen för routing

När du skapar en Angular-app med CLI kan du aktivera routing direkt från början — svara bara "Yes" när du får frågan om routing. Angular skapar då de nödvändiga filerna åt dig (vilket vi redan gjorde när vi skapade appen). En av dessa filer är app.routes.ts.

Om du av någon anledning inte har denna fil, oroa dig inte — du kan skapa den själv i projektets rotmapp. Den ska se ut så här:

routes.ts

routes.ts

copy

Denna fil anger vilka rutter som finns i din app och vilka komponenter som ska visas för varje rutt.

Se även till att dina rutter är kopplade i app.config.ts på följande sätt:

config.ts

config.ts

copy

Utan raden provideRouter(routes) kommer Angular inte känna till dina rutter, även om de är definierade i app.routes.ts.

Konfigurera rutter

Nu ska vi lägga till rutter för vår Task Tracker-app. Öppna app.routes.ts och skriv följande kod:

routes.ts

routes.ts

copy

Detta är bara en array av rutter som vi exporterar. Varje rutt är ett objekt med dessa inställningar:

  • path — URL-sökvägen;

  • component — komponenten som visas när du navigerar till den sökvägen.

I vårt fall har vi två rutter:

Huvudsidan som visar listan över uppgifter.

routes.ts

routes.ts

copy

När en användare besöker rotadressen (localhost:4200/), kommer Angular att visa TaskListComponent.

Sidan för uppgiftsdetaljer som visar information om en enskild uppgift:

routes.ts

routes.ts

copy

Här är :id en dynamisk parameter. Angular förstår att :id kan vara vilket värde som helst (som /task/1, /task/42 osv.). Detta värde skickas automatiskt till TaskDetailsComponent, och du kan använda det för att hämta data för just den uppgiften.

Så när en användare går till localhost:4200/task/1 kommer Angular att visa TaskDetailsComponent med detaljer för uppgift nr 1.

Just nu fungerar ingenting ännu eftersom vi bara har definierat rutterna, men vi har inte kopplat dem helt till våra komponenter. Vi gör det i nästa kapitel!

question mark

I vilken fil definieras vanligtvis rutterna i en Angular-applikation?

Select the correct answer

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 6. Kapitel 3
some-alt