当前位置: 首页 > java >正文

Vue.js教学第十二章:Vue Router实战指南(二)

Vue Router(二):深入剖析 Vue Router 高级特性

在前端开发领域,Vue.js 框架凭借其简洁、灵活和高效的特点,得到了广泛应用。而 Vue Router 作为 Vue.js 的官方路由管理器,为构建单页面应用(SPA)提供了强大的支持。本文将深入探究 Vue Router 的高级特性,包括路由的动态参数和查询参数的使用方法、路由的嵌套结构以及导航守卫(全局守卫、路由独享守卫、组件内守卫)的应用场景和配置方式,旨在帮助学习者掌握复杂的路由管理需求。


一、路由的动态参数和查询参数

(一)动态参数

动态参数用于在路由中传递可变的参数值,使页面能够根据不同参数展示对应的内容。定义动态路由时,在路径中使用冒号 : 后跟参数名称来指定动态段。

  • 定义动态路由

const routes = [{ path: '/user/:id', component: User }
]

在这种情况下,:id 就是一个动态参数。当访问 /user/123/user/456 等路径时,会匹配到该路由,并将 id 参数传递给对应的组件。

  • 在组件中访问动态参数

在组件内部,可以通过 $route.params 对象来获取动态参数的值。例如,在 User 组件中:

export default {name: 'User',mounted() {console.log(this.$route.params.id); // 输出动态参数 id 的值}
}

(二)查询参数

查询参数是在 URL 的末尾以 ?key=value 形式附加的参数,用于传递额外的信息。

  • 定义包含查询参数的路由

const routes = [{ path: '/search', component: Search }
]

访问 /search?keyword=vue&age=20 这样的 URL 时,就可以获取查询参数。

  • 在组件中访问查询参数

在组件中通过 $route.query 对象来获取查询参数的值。例如,在 Search 组件中:

export default {name: 'Search',mounted() {console.log(this.$route.query.keyword); // 输出 'vue'console.log(this.$route.query.age); // 输出 '20'}
}

(三)动态参数与查询参数的对比

对比项动态参数查询参数
定义方式在路径中使用 :参数名在 URL 末尾以 ?key=value 形式附加
获取方式$route.params$
http://www.xdnf.cn/news/8420.html

相关文章:

  • C++ 日志系统实战第六步:性能测试
  • Day 29 训练
  • 永磁同步电机控制算法-滑模反馈线性化控制器
  • 红队攻防实践:15大漏洞原理与复现全解析
  • 【agent】简历信息提取智能体
  • AGV(自动导引车)通信协议及通信链路性能需求分析
  • 力扣HOT100之图论:994. 腐烂的橘子
  • 二、详细解释OpenGL图形管线中顶点处理阶段的工作原理
  • day57—快速(选择/排序)—数组中的第 K 个最大元素(LeetCode-215)
  • 国家网络身份认证公共服务管理办法
  • nginx配置跨域请求,后台不用配置啦,完美
  • vue 水印组件
  • 【Dv3Admin】插件 dv3admin_chatgpt 优化支持多种启动方式实现SSE效果
  • QT之巧用对象充当信号接收者
  • Linux进程 线程 进程间通信 IPC——管道
  • 全国青少年信息素养大赛-python编程—省赛真题—卡牌游戏
  • Redis配置文件详解
  • 树 Part 10
  • JFace中MVC的表的单元格编辑功能的实现
  • Datawhale_PyPOTS_task6
  • 【安全攻防与漏洞​】​​HTTPS中的常见攻击与防御​​
  • 机器人强化学习入门学习笔记(三)
  • 洛谷 P1800 software(DP+二分)【提高+/省选−】
  • 三步快速部署一个本地Windows/Linux大语言模型ChatGLM(环境配置+权重下载+运行)
  • AI架构分层原则
  • Stack主题遇到的问题
  • C# WinForm应用程序多语言实现全面指南
  • deepseek组合使用
  • 测试关键点
  • 【Kafka】编写消费者开发模式时遇到‘未解析的引用‘SIGUSR1’’