vue路由传参的三种方式区别(params,query)
最近在做一个项目涉及到列表到详情页的参数的传递,网上搜索一下路由传参,结合自己的写法找到一种适合自己的,不过也对三种写法都有了了解,在此记录一下
<ul class="table_info" v-for="item in customeLsit">
<li>{{item.name}}</li>
<li>{{item.phone}}</li>
<li>{{item.date}}</li>
<li class="detail" @click="customeDetail(item.id)">详情</li>
这是列表页面,需要传递参数到详情页,下面给出三种方法
方法一:直接在路由路径后面加参数
customeDetail(id){
console.log('id',id);
this.$router.push({
path:'/custome/customeDetailPage/${id}',
})
},
需要对应路由配置如下:
{
path:'/custome/customeDetailPage/:id',
component:CDetailPage
},
//需要在path中添加/:id来对应参数
//详情页获取传递的参数
methods:{
getParams(){
let routerParams = this.$route.params.id;
this.customId = routerParams;
console.log('id',routerParams);
},
},
created(){
this.getParams()
}
方法二:利用name属性来匹配路由,然后通过params传递参数
//列表页面传参数
customeDetail(id){
console.log('id',id);
this.$router.push({
name:'CDetailPage', //注意一定要用name属性匹配路由
params:{
dataObj:id
}
})
},
//对应路由配置
{
path:'/custome/customeDetailPage',
name:'CDetailPage',
component:CDetailPage
},
//详情页面接收参数
methods:{
getParams(){
let routerParams = this.$route.params.dataObj;
this.customId = routerParams;
console.log('id',routerParams);
}, },
created(){
this.getParams()
}
第三种方法:通过path匹配路由,然后通过query传递参数
//列表页面传参
customeDetail(id){
console.log('id',id);
this.$router.push({
path:'/custome/customeDetailPage',
query:{
name:'id',
dataObj:id
}
})
},
//路由配置,name属性可有可无
{
path:'/custome/customeDetailPage',
component:CDetailPage
}, //我写的时候是没有用name属性
//详情页获取属性
methods:{
getParams(){
let routerParams = this.$route.query.dataObj;
this.customId = routerParams;
console.log('id',routerParams);
}, },
created(){
this.getParams()
}

这是query传参是路由显示的参数
vue路由传参的三种方式区别(params,query)的更多相关文章
- vue路由传参的三种方式以及解决vue路由传参页面刷新参数丢失问题
最近项目中涉及到跨页面传参数和后台进行数据交互,看到需求之后第一反应就是用路由传参来解决:Vue中给我们提供了三种路由传参方式,下面我们一个一个的来看一下: 方法一:params传参: this.$r ...
- vue路由传参的三种方式
方式一 通过query方式传参 这种情况下 query传递的参数会显示在url后面 this.$router.push({ path: '/detail', query: { id: id } }) ...
- Vue路由传参的几种方式
原 Vue路由传参的几种方式 2018年07月28日 23:52:40 广积粮缓称王 阅读数 12613 前言:顾名思义,vue路由传参是指嵌套路由时父路由向子路由传递参数,否则操作无效.传参方式 ...
- Vue-router路由传参的三种方式
本文简单介绍下三种路由传参: (1)在路由中配置 { path : ‘/home/:id’, name : ‘Dome’, component } 然后写调用的时候 this.$router.push ...
- React中使用 react-router-dom 路由传参的三种方式详解【含V5.x、V6.x】!!!
路由传值的三种方式(v5.x) params参数 //路由链接(携带参数): <Link to='/demo/test/tom/18'}>详情</Link> //或 <L ...
- vue里面路由传参的三种方式
1.方式一 通过query的方式也就是?的方式路径会显示传递的参数 HTML的方式<router-link :to="{name:xxx,query:{page:1,code:8899 ...
- vue 路由传参的三种基本模式
路由是连接各个页面的桥梁,而参数在其中扮演者异常重要的角色,在一定意义上,决定着两座桥梁是否能够连接成功. 在vue路由中,支持3中传参方式. 场景,点击父组件的li元素跳转到子组件中,并携带参数,便 ...
- vue 路由传参的三种方法
API在这里 https://router.vuejs.org/guide/essentials/navigation.html 第一种传参 通过路由属性中的name来确定匹配的路由,通过param ...
- React路由传参的三种方式
方式 一: 通过params 1.路由表中 <Route path=' /sort/:id ' component= ...
随机推荐
- cout,cerr和clog的区别
官方解释: cout——Standard output stream Object of class ostream that represents the standard output strea ...
- 学习笔记-canny边缘检测
Canny边缘检测 声明:阅读本文需要了解线性代数里面的点乘(图像卷积的原理),高等数学里的二元函数的梯度,极大值定义,了解概率论里的二维高斯分布 1.canny边缘检测原理和简介 2.实现步骤 3. ...
- 2018-2019-2 20165325《网络对抗技术》Exp0 Kali安装 Week1
2018-2019-2 20165325<网络对抗技术>Exp0 Kali安装 Week1 一.安装kali VMware上学期已经有了,主要是下载Kali-Linux-2019.1-vm ...
- app个推(透传消息)
- crontab和at任务
crontab周期任务 名称解释: cron来源于希腊语 chronos(χρόνος),原意是时间.(引用自维基百科) tab全称是table,表 常用参数: -e 编辑crontab文件 -l 显 ...
- 【python】使用flask制作小型页面的关键点总结
目录结构 app.py web代码 store.db 存储信息的轻量数据库,用的sqlite3 schema.sql 数据库的初始化建表语句 settings.cfg 配置信息 static/styl ...
- C# 定时任务
工作中需要做个每天定时发邮件的功能,了解之后知道java里有做定时任务比较容易的方法,就是Quartz,在C#里叫Quartz.Net. 在写代码之前需要引用几个dll文件,分别是C5.dll.Com ...
- Django—常用功能
索引 一.静态文件 二.中间件 三.Admin站点 3.1 列表页选项 3.2 编辑页选项 3.3 重写模板 四.上传图片 4.1 在管理页面admin中上传图片 4.2 自定义form表单中上传图片 ...
- java ReentrantLock结合条件队列 实现生产者-消费者模式 以及ReentratLock和Synchronized对比
package reentrantlock; import java.util.ArrayList; public class ProviderAndConsumerTest { static Pro ...
- python3学习笔记之十七
1. 网站本质:通过socket建立连接. 服务端(网站) 1. 先启动并监听:80端口 4. 获取请求信息 请求头 请求体 5. 处理请求 响应内容: 响应头:\r\n\r\n响应体 ...