Vue Academy · Les

Geneste en dynamische routes

Bouw geneste layouts en dynamische routeparameters.

Les 2 van 313 stappen

Geneste en dynamische routes is een gratis Vue Academy-les op CoddyKit. Dit is les 2 van 3. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Vue Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Vue Academy bevat in totaal 3 lessen.

Verder dan statische routes

Echte apps hebben routes nodig die gegevens bevatten en in lay-outs kunnen worden genest.

  • Dynamische segmenten vangen waarden op, zoals een id
  • Geneste routes renderen kinderen binnen een oudercomponent
  • Routes met een naam en programmatische navigatie bieden meer flexibiliteit

Dynamische routesegmenten

Een dubbele punt definieert een dynamisch segment dat met elke waarde overeenkomt.

const routes = [
  { path: "/user/:id", component: UserProfile }
]

// Matches /user/1, /user/42, /user/abc

route.params openen

Lees de vastgelegde waarde via route.params.

<script setup>
import { useRoute } from "vue-router"

const route = useRoute()
console.log(route.params.id)
</script>

Reageren op wijzigingen in parameters

Wanneer alleen de parameter verandert, bijvoorbeeld van /user/1 naar /user/2, wordt de component hergebruikt. Observeer de parameter om de gegevens opnieuw te laden.

import { watch } from "vue"
import { useRoute } from "vue-router"

const route = useRoute()
watch(() => route.params.id, (newId) => {
  loadUser(newId)
})

Meerdere dynamische segmenten

Routes kunnen meerdere dynamische onderdelen bevatten.

const routes = [
  { path: "/user/:userId/post/:postId", component: Post }
]

// route.params.userId and route.params.postId

Geneste routes

Met geneste routes kunnen kindroutes binnen een oudercomponent worden gerenderd.

const routes = [
  {
    path: "/user/:id",
    component: UserLayout,
    children: [
      { path: "profile", component: Profile },
      { path: "posts", component: Posts }
    ]
  }
]

Geneste router-view

De oudercomponent heeft een eigen router-view nodig waarin de kinderen worden gerenderd.

<!-- UserLayout.vue -->
<template>
  <h1>User</h1>
  <router-view></router-view>
</template>

<!-- /user/1/profile renders Profile here -->

Routes met een naam

Geef een route een naam om ernaar te verwijzen zonder het pad hard te coderen.

const routes = [
  {
    path: "/user/:id",
    name: "user",
    component: UserProfile
  }
]

Koppelen op naam

router-link kan naar een route met een naam verwijzen en parameters als object doorgeven.

<router-link
  :to="{ name: 'user', params: { id: 42 } }"
>
  View User
</router-link>

Programmatische navigatie

Navigeer vanuit JavaScript met de push-methode van de router.

import { useRouter } from "vue-router"

const router = useRouter()

function goToUser(id) {
  router.push({ name: "user", params: { id } })
}

Andere navigatiemethoden

De router biedt meer hulpmethoden voor navigatie:

  • router.push voegt een nieuw geschiedenisitem toe
  • router.replace navigeert zonder een nieuw geschiedenisitem toe te voegen
  • router.back gaat naar de vorige pagina

Korte controle

Controleer je begrip van dynamische en geneste routes.

Samenvatting: geneste en dynamische routes

Je hebt geavanceerde routering geleerd:

  • Dynamische segmenten (/user/:id) worden vastgelegd in route.params
  • Geneste routes via children en een geneste router-view
  • Routes met een naam maken koppelen op naam mogelijk
  • router.push navigeert programmatisch

Volgende onderwerp: navigatieguards.

Gratis beginnen

Leer HTML met een AI-tutor — gratis

Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.

Cursussen
42
Lessen
156

Veelgestelde vragen

Is de les “Geneste en dynamische routes” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Vue Academy, waaronder “Geneste en dynamische routes”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Vue Academy bevat in totaal 3 lessen.

Wat leer ik in “Geneste en dynamische routes”?

Bouw geneste layouts en dynamische routeparameters. Je oefent met Vue Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.

Heb ik ervaring nodig om met Vue Academy te beginnen?

Ervaring vooraf is niet nodig. Vue Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 3.

Hoe lang duurt de les “Geneste en dynamische routes”?

De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.

Kan ik code schrijven en uitvoeren in deze les over Vue Academy?

Ja. Elke les over Vue Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.

Alle lessen in deze cursus

  1. Vue Router instellen
  2. Geneste en dynamische routes
  3. Navigatieguards
← Terug naar Vue Academy