vue路由传参的基本实现方式小结【三种方式】


Posted in Javascript onFebruary 05, 2020

本文实例讲述了vue路由传参的基本实现方式。分享给大家供大家参考,具体如下:

前言

vue 路由传参的使用场景一般都是应用在父路由跳转到子路由时,携带参数跳转。传参方式可划分为 params 传参和 query 传参,而 params 传参又可分为在 url 中显示参数和不显示参数两种方式,这就是vue路由传参的三种方式。

方式一:params 传参(显示参数)

params 传参(显示参数)又可分为 声明式 和 编程式 两种方式

1、声明式 router-link

该方式是通过 router-link 组件的 to 属性实现,该方法的参数可以是一个字符串路径,或者一个描述地址的对象。使用该方式传值的时候,需要子路由提前配置好参数,例如:

//子路由配置
{
 path: '/child/:id',
 component: Child
}
//父路由组件
<router-link :to="/child/123">进入Child路由</router-link>

2、编程式 this.$router.push

使用该方式传值的时候,同样需要子路由提前配置好参数,例如:

//子路由配置
{
 path: '/child/:id',
 component: Child
}
//父路由编程式传参(一般通过事件触发)
this.$router.push({
  path:'/child/${id}',
})

在子路由中可以通过下面代码来获取传递的参数值

this.$route.params.id

方式二:params 传参(不显示参数)

params 传参(不显示参数)也可分为 声明式 和 编程式 两种方式,与方式一不同的是,这里是通过路由的别名 name 进行传值的

1、声明式 router-link

该方式也是通过 router-link 组件的 to 属性实现,例如:

<router-link :to="{name:'Child',params:{id:123}}">进入Child路由</router-link>

2、编程式 this.$router.push

使用该方式传值的时候,同样需要子路由提前配置好参数,不过不能再使用 :/id 来传递参数了,因为父路由中,已经使用 params 来携带参数了,例如:

//子路由配置
{
 path: '/child,
 name: 'Child',
 component: Child
}
//父路由编程式传参(一般通过事件触发)
this.$router.push({
  name:'Child',
  params:{
   id:123
  }
})

在子路由中可以通过下面代码来获取传递的参数值

this.$route.params.id

注意:上述这种利用 params 不显示 url 传参的方式会导致在刷新页面的时候,传递的值会丢失

方式三:query 传参(显示参数)

query 传参(显示参数)也可分为 声明式 和 编程式 两种方式

1、声明式 router-link

该方式也是通过 router-link 组件的 to 属性实现,不过使用该方式传值的时候,需要子路由提前配置好路由别名(name 属性),例如:

//子路由配置
{
 path: '/child,
 name: 'Child',
 component: Child
}
//父路由组件
<router-link :to="{name:'Child',query:{id:123}}">进入Child路由</router-link>

2、编程式 this.$router.push

使用该方式传值的时候,同样需要子路由提前配置好路由别名(name 属性),例如:

//子路由配置
{
 path: '/child,
 name: 'Child',
 component: Child
}
//父路由编程式传参(一般通过事件触发)
this.$router.push({
  name:'Child',
  params:{
   id:123
  }
})

在子路由中可以通过下面代码来获取传递的参数值

this.$route.query.id

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
[原创]网络复制内容时常用的正则+editplus
Nov 30 Javascript
jQuery对象[0]是什么含义?
Jul 31 Javascript
jQuery DOM插入节点操作指南
Mar 03 Javascript
学习javascript面向对象 实例讲解面向对象选项卡
Jan 04 Javascript
JS实现兼容火狐及IE iframe onload属性的遮罩层隐藏及显示效果
Aug 23 Javascript
原生JS实现匀速图片轮播动画
Oct 18 Javascript
微信小程序通过api接口将json数据展现到小程序示例
Jan 20 Javascript
vue.js实例对象+组件树的详细介绍
Oct 20 Javascript
浅谈ajax请求不同页面的微信JSSDK问题
Feb 26 Javascript
Angularjs实现控制器之间通信方式实例总结
Mar 27 Javascript
vue 列表页跳转详情页获取id以及详情页通过id获取数据
Mar 27 Javascript
layui table表格数据的新增,修改,删除,查询,双击获取行数据方式
Nov 14 Javascript
Vuex的API文档说明详解
Feb 05 #Javascript
如何实现iframe父子传参通信
Feb 05 #Javascript
JavaScript对象原型链原理详解
Feb 05 #Javascript
基于Vue的侧边目录组件的实现
Feb 05 #Javascript
Js视频播放器插件Video.js使用方法详解
Feb 04 #Javascript
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
Feb 04 #jQuery
JS代码优化的8点建议
Feb 04 #Javascript
You might like
php.ini中文版
2006/10/09 PHP
php中单个数据库字段多列显示(单字段分页、横向输出)
2014/07/28 PHP
php利用事务处理转账问题
2015/04/22 PHP
Javascript实例教程(19) 使用HoTMetal(3)
2006/12/23 Javascript
Jquery实现点击按钮,连续地向textarea中添加值的实例代码
2014/03/08 Javascript
jQuery中常用动画效果函数(日常整理)
2016/09/17 Javascript
js带闹铃功能的倒计时代码
2016/09/29 Javascript
js判断PC端与移动端跳转
2020/12/24 Javascript
Vue学习笔记进阶篇之单元素过度
2017/07/19 Javascript
JavaScript中的return布尔值的用法和原理解析
2017/08/14 Javascript
js实现鼠标移动到图片产生遮罩效果
2017/10/21 Javascript
vue用递归组件写树形控件的实例代码
2018/07/19 Javascript
基于Koa(nodejs框架)对json文件进行增删改查的示例代码
2019/02/02 NodeJs
JavaScript中callee和caller的区别与用法实例分析
2019/06/28 Javascript
微信小程序使用自定义组件导航实现当前页面高亮
2020/01/02 Javascript
浅谈JavaScript中你可能不知道URL构造函数的属性
2020/07/13 Javascript
vue-cli3自动消除console.log()的调试信息方式
2020/10/21 Javascript
Vue 实现一个简单的鼠标拖拽滚动效果插件
2020/12/10 Vue.js
用Python去除图像的黑色或白色背景实例
2019/12/12 Python
Python如何发送与接收大型数组
2020/08/07 Python
Python如何测试stdout输出
2020/08/10 Python
PyTorch 导数应用的使用教程
2020/08/31 Python
基于python实现图片转字符画代码实例
2020/09/04 Python
Django通过设置CORS解决跨域问题
2020/11/26 Python
CSS3中background-clip和background-origin的区别示例介绍
2014/03/10 HTML / CSS
HTML5中5个简单实用的API
2014/04/28 HTML / CSS
学校联谊活动方案
2014/02/15 职场文书
餐饮企业总经理岗位职责范文
2014/02/18 职场文书
槐乡的孩子教学反思
2014/04/27 职场文书
思想作风纪律整顿心得体会
2014/09/04 职场文书
就业协议书盖章的注意事项
2014/09/28 职场文书
大客户经理岗位职责
2015/04/09 职场文书
使用Pytorch实现two-head(多输出)模型的操作
2021/05/28 Python
详解NodeJS模块化
2021/06/15 NodeJs
python实现Nao机器人的单目测距
2021/09/04 Python
抖音动画片,皮皮虾,《治愈系》动画在用这首REMIX作为背景音乐,Anak ,The last world with you完整版
2022/03/16 杂记