useRoute
useRoute 組合式函式會回傳目前的路由。
在 Vue 元件的範本中,您可以使用
$route
存取路由。範例
在以下範例中,我們透過 useFetch
呼叫 API,並使用動態頁面參數 - slug
- 作為 URL 的一部分。
~/pages/[slug].vue
<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>
如果您需要存取路由查詢參數 (例如路徑 /test?example=true
中的 example
),則可以使用 useRoute().query
而不是 useRoute().params
。
API
除了動態參數和查詢參數之外,useRoute()
也提供以下與目前路由相關的計算參考
fullPath
:與目前路由相關聯的編碼 URL,包含路徑、查詢和雜湊hash
:URL 中以 # 開頭的解碼雜湊部分query
:存取路由查詢參數matched
:正規化的已匹配路由陣列,包含目前路由位置meta
:附加到紀錄的自訂資料name
:路由紀錄的唯一名稱path
:URL 的編碼路徑名稱部分redirectedFrom
:在到達目前路由位置之前嘗試存取的路由位置