详解vue嵌套路由-params传递参数
发布时间 - 2026-01-11 01:14:48 点击率:次在嵌套路由中,父路由向子路由传值除了query外,还有params,params传值有两种情况,一种是值在url中显示,另外一种是值不显示在url中。

1、显示在url中
index.html
<div id="app"> <!-- router-view 路由出口, 路由匹配到的组件将渲染在这里 --> <router-view></router-view> </div>
main.js params传值是通过 :[参数值] 如path: "/home/game/:num"
import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)
//引入两个组件
import home from "./home.vue"
import game from "./game.vue"
//定义路由
const routes = [
{ path: "/", redirect: "/home" },//重定向
{
path: "/home", component: home,
children: [
{ path: "/home/game/:num", component: game }
]
}
]
//创建路由实例
const router = new VueRouter({routes})
new Vue({
el: '#app',
data: {
id:123,
},
methods: {
},
router
})
home.vue 在home中具体的值就跟在路径后面,如 “/home/game/123”,也就是说传递给子路由的值就是 123
<template>
<div>
<h3>首页</h3>
<router-link to="/home/game/123">
<button>显示</button>
</router-link>
<router-view></router-view>
</div>
</template>
game.vue 在子路由中,通过 this.$route.params.参数名来接受传递过来的值
<template>
<h3>王者荣耀{{ this.$route.params.num }}</h3>
</template>
2、不显示在url中,如果在PC端将传递的值显示在url中,这样无形中就存在安全隐患,如果客户不小心修改了url那样就会出错,移动端就无所谓了,如何才能不显示在url中,同样很简单,但是需要给映射的路径起一个别名,通过name来取别名
同样只需将上面的main.js中的定义路由改为如下样子,在子路由中通过name来给路径其一个game1的别名。
//定义路由
const routes = [
{ path: "/", redirect: "/home" },//重定向
{
path: "/home", component: home,
children: [
{ name: "game1", path: "/home/game/", component: game }
]
}
]
home.vue 中router-link修改为:to="{ name:'game1', params: {num: 123} }" params中是要传递的参数,这样传递的参数就不会显示在url中。
<template>
<div>
<h3>首页</h3>
<router-link :to="{ name:'game1', params: {num: 123} }">
<button>显示</button>
</router-link>
<router-view></router-view>
</div>
</template>
运行的结果如下图
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# vue
# params
# 参数
# router
# router.params
# 详解Vue路由传参的两种方式query和params
# vue如何通过params和query传值(刷新不丢失)
# vue-router传递参数的几种方式实例详解
# vue踩坑日记之params传递参数问题
# 首页
# 重定向
# 就会
# 在这里
# 只需
# 很简单
# 有两种
# 跟在
# 中就
# 大家多多
# 来给
# 如下图
# 也就是说
# 无所谓
# game
# view
# app
# gt
# query
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
用yum安装MySQLdb模块的步骤方法
Laravel如何构建RESTful API_Laravel标准化API接口开发指南
Laravel如何保护应用免受CSRF攻击?(原理和示例)
C#如何调用原生C++ COM对象详解
Linux系统运维自动化项目教程_Ansible批量管理实战
高性价比服务器租赁——企业级配置与24小时运维服务
魔方云NAT建站如何实现端口转发?
如何快速启动建站代理加盟业务?
Python文本处理实践_日志清洗解析【指导】
Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程
绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信
如何选择PHP开源工具快速搭建网站?
Laravel如何实现API资源集合?(Resource Collection教程)
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】
微信公众帐号开发教程之图文消息全攻略
高端网站建设与定制开发一站式解决方案 中企动力
Laravel怎么实现模型属性的自动加密
Laravel怎么上传文件_Laravel图片上传及存储配置
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势
Laravel怎么解决跨域问题_Laravel配置CORS跨域访问
高配服务器限时抢购:企业级配置与回收服务一站式优惠方案
5种Android数据存储方式汇总
音乐网站服务器如何优化API响应速度?
Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制
Laravel如何实现API版本控制_Laravel API版本化路由设计策略
Laravel如何处理文件上传_Laravel Storage门面实现文件存储与管理
使用豆包 AI 辅助进行简单网页 HTML 结构设计
Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制
微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】
Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】
如何在阿里云域名上完成建站全流程?
常州企业网站制作公司,全国继续教育网怎么登录?
Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议
文字头像制作网站推荐软件,醒图能自动配文字吗?
Linux系统命令中screen命令详解
魔毅自助建站系统:模板定制与SEO优化一键生成指南
Laravel API资源(Resource)怎么用_格式化Laravel API响应的最佳实践
软银砸40亿美元收购DigitalBridge 强化AI资料中心布局
Laravel如何升级到最新版本?(升级指南和步骤)
Laravel事件监听器怎么写_Laravel Event和Listener使用教程
Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践
长沙做网站要多少钱,长沙国安网络怎么样?
Laravel如何记录自定义日志?(Log频道配置)
如何在IIS7中新建站点?详细步骤解析
laravel怎么通过契约(Contracts)编程_laravel契约(Contracts)编程方法
C语言设计一个闪闪的圣诞树
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧

