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 相关文章推荐
由浅到深了解JavaScript类
Sep 08 Javascript
jQuery显示和隐藏 常用的状态判断方法
Jan 29 Javascript
jQuery统计指定子元素数量的方法
Mar 17 Javascript
探讨JavaScript语句的执行过程
Jan 28 Javascript
JavaScript希尔排序、快速排序、归并排序算法
May 08 Javascript
运用js教你轻松制作html音乐播放器
Apr 17 Javascript
AngularJS Select(选择框)使用详解
Jan 18 Javascript
javascript高级模块化require.js的具体使用方法
Oct 31 Javascript
利用node.js如何创建子进程详解
Dec 09 Javascript
js里面的变量范围分享
Jul 18 Javascript
JSON 入门教程基础篇 json入门学习笔记
Sep 22 Javascript
JS如何实现在弹出窗口中加载页面
Dec 03 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
php5 non-thread-safe和thread-safe这两个版本的区别分析
2010/03/13 PHP
PHP中Fatal error session_start()错误解决步骤
2014/08/05 PHP
php生成验证码,缩略图及水印图的类分享
2016/04/07 PHP
PHP异常处理定义与使用方法分析
2017/07/25 PHP
php+ajax实现文件切割上传功能示例
2020/03/03 PHP
JS按位非(~)运算符与~~运算符的理解分析
2011/07/31 Javascript
文本框只能选择数据到文本框禁止手动输入
2013/11/22 Javascript
jquery弹出层类代码分享
2013/12/27 Javascript
jquery下拉select控件操作方法分享(jquery操作select)
2014/03/25 Javascript
setInterval计时器不准的问题解决方法
2014/05/08 Javascript
深入理解JavaScript系列(17):面向对象编程之概论详细介绍
2015/03/04 Javascript
Javascript中使用parseInt函数需要注意的问题
2015/04/02 Javascript
jQuery学习笔记之Ajax用法实例详解
2015/12/01 Javascript
解析JavaScript面向对象概念中的Object类型与作用域
2016/05/10 Javascript
AngularJS基础 ng-keypress 指令简单示例
2016/08/02 Javascript
基于vue组件实现猜数字游戏
2020/05/28 Javascript
用WebStorm进行Angularjs 2开发(环境篇:Windows 10,Angular-cli方式)
2018/12/05 Javascript
Vue中使用Lodop插件实现打印功能的简单方法
2019/12/19 Javascript
小程序选项卡以及swiper套用(跨页面)
2020/06/19 Javascript
JavaScript中变量提升和函数提升的详解
2020/08/07 Javascript
[05:46]DOTA2英雄梦之声_第18期_陈
2014/06/20 DOTA
[00:27]DOTA2战队VP、Secret贺新春
2018/02/11 DOTA
Python的Django框架中自定义模版标签的示例
2015/07/20 Python
python3之微信文章爬虫实例讲解
2017/07/12 Python
完美解决python中ndarray 默认用科学计数法显示的问题
2018/07/14 Python
详解Python解决抓取内容乱码问题(decode和encode解码)
2019/03/29 Python
Python实现AI自动抠图实例解析
2020/03/05 Python
python语言的优势是什么
2020/06/17 Python
W Hamond官网:始于1979年的钻石专家
2020/07/20 全球购物
你所知道的集合类都有哪些?主要方法?
2012/12/31 面试题
总经理文秘岗位职责
2014/02/03 职场文书
《在山的那边》教学反思
2014/02/23 职场文书
给老婆的检讨书
2015/01/27 职场文书
公司更名通知函
2015/04/24 职场文书
演讲稿之开卷有益
2019/08/07 职场文书
CSS中实现动画效果-附案例
2022/02/28 HTML / CSS