useRoute 函数的详细介绍与使用示例


title: useRoute 函数的详细介绍与使用示例

date: 2024/7/27

updated: 2024/7/27

author: cmdragon

excerpt:

摘要:本文介绍了Nuxt.js中useRoute函数的详细用途与示例,展示了如何在组合式API中使用useRoute获取当前路由信息,包括动态参数、查询参数等,并提供了丰富的计算引用说明,如fullPath、hash、matched等,以及如何正确访问查询参数。

categories:

  • 前端开发

tags:

  • Nuxt.js
  • useRoute
  • 路由
  • API
  • 组件
  • 查询
  • 动态


扫描二维码关注或者微信搜一搜:编程智域 前端至全栈交流与成长

在nuxt.js开发中,useRoute是一个非常实用的组合函数,它能够帮助我们获取当前路由的各种信息,从而实现更加灵活和动态的页面交互。

一、useRoute 函数的基本作用

useRoute函数的主要作用是返回当前路由的相关信息。在 Vue 组件的模板中,我们可以使用$route来访问路由,但在组合式 API

中,就需要使用useRoute

二、示例展示

以下是一个使用动态页面参数slug来通过useFetch调用 API 的示例:

复制代码
<template>
  <div>
    <h1>{{ mountain.title }}</h1>
    <p>{{ mountain.description }}</p>
  </div>
</template>

<script>

export default {
  setup() {
    const route = useRoute();
    const { data: mountain } = await useFetch(`/api/mountains/${route.params.slug}`);
    return {
      mountain
    };
  }
};
</script>

在上述示例中,通过useRoute获取到当前路由的params中的slug值,然后将其拼接到 API 路径中,使用useFetch获取数据并在页面中展示。

三、useRoute 提供的计算引用

除了动态参数和查询参数,useRoute还提供了以下丰富的计算引用:

  1. fullPath:这是与当前路由关联的编码 URL,包含路径、查询和哈希。例如,如果当前 URL
    https://example.com/page?param=value#hash,那么 fullPath将是完整的这个字符串。
  2. hash:获取 URL 中以#开头的解码哈希部分。
  3. matched:这是与当前路由位置匹配的规范化的匹配路由数组。
  4. meta:可以用于附加到路由记录的自定义数据。
  5. name:路由记录的唯一名称。
  6. path:获取 URL 中编码的路径名部分。
  7. redirectedFrom:记录在到达当前路由位置之前尝试访问的路由位置。

四、查询参数的获取

如果您需要访问路由的查询参数(例如在路径/test?example=true中的example),那么可以使用useRoute().query

而不是useRoute().params

余下文章内容请点击跳转至 个人博客页面 或者 扫码关注或者微信搜一搜:编程智域 前端至全栈交流与成长,阅读完整的文章:https://blog.cmdragon.cn/posts/eb8617e107bf/

往期文章归档:

相关推荐
VIP_CQCRE1 天前
Coze 接入自定义模型更简单:用 Ace Data Cloud 打通 OpenAI Responses API
openai·api·ai agent·coze·acedatacloud
Patrick在香港2 天前
Claude 工具调用返回空:8 次失败里只有 1 次状态码不对,其余全带 200
爬虫·python·api·claude·香港
todoitbo2 天前
本地图库语义搜索实战:接上蓝耘元生代,让“傍晚的海边“能搜到图
人工智能·ai·api·工具实战
用户7783366132112 天前
搜索页的 URL 状态管理:可分享、可回退、可刷新
python·api
IvanLiu2 天前
我故意构造了 3 类上游失败:怎样避免 API 失败后误扣费?
api
亲亲小宝宝鸭3 天前
富文本编辑文章到文章展示在页面上,没有想象中那么简单
架构·nuxt.js
探数API小喇叭3 天前
天气 API 接口思路:拆解一套包含 4 个子接口的轻量化气象服务
大数据·api·天气预报
用户298698530144 天前
Python 如何实现 Word 与 RTF 文档互转
后端·python·api
VIP_CQCRE4 天前
用 Ace Data Cloud 一次接入 AI 视频生成:HappyHorse Videos API 实战指南
人工智能·api·ai视频·acedatacloud
Patrick在香港4 天前
Python 抓 0.91 GB 香港法例:Agent 的进度该写进磁盘,不是写进上下文
爬虫·python·api·claude·香港