mirror of
https://github.com/nuxt/nuxt.git
synced 2024-11-24 14:45:15 +00:00
f26a801775
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com> Co-authored-by: Daniel Roe <daniel@roe.dev>
1.7 KiB
1.7 KiB
title | description | links | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
useRoute | The useRoute composable returns the current route. |
|
::callout
Within the template of a Vue component, you can access the route using $route
.
::
Example
In the following example, we call an API via useFetch
using a dynamic page parameter - slug
- as part of the URL.
<script setup lang="ts">
const route = useRoute()
const { data: mountain } = await useFetch(`/api/mountains/${route.params.slug}`)
</script>
<template>
<div>
<h1>{{ mountain.title }}</h1>
<p>{{ mountain.description }}</p>
</div>
</template>
If you need to access the route query parameters (for example example
in the path /test?example=true
), then you can use useRoute().query
instead of useRoute().params
.
API
Apart from dynamic parameters and query parameters, useRoute()
also provides the following computed references related to the current route:
fullPath
: encoded URL associated with the current route that contains path, query and hashhash
: decoded hash section of the URL that starts with a #matched
: array of normalized matched routes with current route locationmeta
: custom data attached to the recordname
: unique name for the route recordpath
: encoded pathname section of the URLredirectedFrom
: route location that was attempted to access before ending up on the current route location
:read-more{icon="i-simple-icons-vuedotjs" to="https://router.vuejs.org/api/interfaces/RouteLocationNormalizedLoaded.html"}