vue-router 前端路由之路由传值的方式详解


Posted in Javascript onApril 30, 2019

路由传值

在前端的路由里面,我们在切换路由的时候,也相当于切换了页面,页面与页面之前有时候需要做到传值 ,这个时候就需要进行路由传值,在VueRouter里面,两个路由之间做跳转的时候,如何进行传值呢?

普通跨页面传值:

1.通过localStorage

setItem()
getItem()

2.通过search(地址栏 ? 后面的参数)

VueRouter的路由传值

VueRouter的路由传值有两种方式

jquery传值。 类似get传值

传值的路由

this.$router.push({
  path: "/login?uname=" + this.userName
});

传值路由第二种写法

this.$router.push({
  path: "/login",
  query: {
    uname: this.userName
  }
});

接收值的路由

console.log("接收过来的值为:" + this.$route.query.uname);        //这里是$route 没有r
----

params传值 。路径变量传值

params路由传值可以把它理解成express路径变量传值 ,它也可以放在地址栏里面进行传递

传值路由第一种写法(还是会将参数显示在地址栏中)

this.$router.push({
  path: "/login/" + this.userName
});

传值路由的第二种写法(不会将参数显示在地址栏中)

this.$router.push({
  name: "login",
  params: {
    uname: this.userName
  }
});

接收值的路由

console.log("接收过来的值为:" + this.$route.params.uname);

注意:在使用params传递参数的时候,我们需要在router的对象里面,找到当前的这个路由,然后去更改它的 path

{
   path: "/login/:uname", //代表当前url跳转的路径
   component: login, //代表在当前这个路径下面,我们如何显示组件(显示那一个组件)
   name: "login" //给当前路由取一个别名
 }

上面的path后面是 /login/:uname ,这一个是我们的一个路径变量,前面的login代表路由,而后面 :uname 代表的是变量

---

通过第二种方式的params传值 ,引伸出post原理传值

params本身确实是会把参数添加到url地址栏,但是,我们可以让它不显示出来,使用下面的方法,我们就可以把它去掉,不显示,从而内容不经过浏览器地址栏处理,直接做到传值。

它只是把路由对象里面的路径变量给去掉了,直接使用的params传值

注意事项:因为它把path里面的路径变量去掉了,所以不能使用path去传递值了

this.$router.push({
  path: "/login/" + this.userName
});
//现在上面的方法就不可用了,而必须使用下面的方法
this.$router.push({
  name: "login",
  params: {
    uname: this.userName
  }
});

这一个就是vue当中变相去处理post传值

总结

以上所述是小编给大家介绍的vue-router 前端路由之路由传值的方式详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
Display SQL Server Login Mode
Jun 21 Javascript
自写简单JS判断是否已经弹出页面
Oct 20 Javascript
JavaScript实现搜索框的自动完成功能(一)
Feb 25 Javascript
基于BootStrap Metronic开发框架经验小结【六】对话框及提示框的处理和优化
May 12 Javascript
浅谈JS中json数据的处理
Jun 30 Javascript
基于Vue.js实现数字拼图游戏
Aug 02 Javascript
vue.js树形组件之删除双击增加分支实例代码
Feb 28 Javascript
JavaScript函数柯里化原理与用法分析
Mar 31 Javascript
Angular2安装angular-cli
May 21 Javascript
JavaScript递归算法生成树形菜单
Aug 15 Javascript
vue-resouce设置请求头的三种方法
Sep 12 Javascript
vue实现商品加减计算总价的实例代码
Aug 12 Javascript
微信小程序页面间传值与页面取值操作实例分析
Apr 30 #Javascript
vue2.0基于vue-cli+element-ui制作树形treeTable
Apr 30 #Javascript
微信小程序常用赋值方法小结
Apr 30 #Javascript
微信小程序实现同一页面取值的方法分析
Apr 30 #Javascript
一百行JS代码实现一个校验工具
Apr 30 #Javascript
Vue-cli3简单使用(图文步骤)
Apr 30 #Javascript
微信小程序单选radio及多选checkbox按钮用法示例
Apr 30 #Javascript
You might like
PHP Ajax中文乱码问题解决方法
2009/02/27 PHP
在PHP中使用反射技术的架构插件使用说明
2010/05/18 PHP
网站用php实现paypal整合方法
2010/11/28 PHP
PHP中header和session_start前不能有输出原因分析
2013/01/11 PHP
解析file_get_contents模仿浏览器头(user_agent)获取数据
2013/06/27 PHP
destoon实现VIP排名一直在前面排序的方法
2014/08/21 PHP
PHP直接修改表内容DataGrid功能实现代码
2015/09/24 PHP
PHP身份证校验码计算方法
2016/08/10 PHP
浅析jQuery中调用ajax方法时在不同浏览器中遇到的问题
2014/06/11 Javascript
JavaScript极简入门教程(二):对象和函数
2014/10/25 Javascript
jQuery实现拖动调整表格单元格大小的代码实例
2015/01/13 Javascript
Bootstrap菜单按钮及导航实例解析
2016/09/09 Javascript
elementui的默认样式修改方法
2018/02/23 Javascript
angular实现input输入监听的示例
2018/08/31 Javascript
JS监听滚动和id自动定位滚动
2018/12/18 Javascript
通过实例解析vuejs如何实现调试代码
2020/07/16 Javascript
基于NodeJS开发钉钉回调接口实现AES-CBC加解密
2020/08/20 NodeJs
[02:51]2014DOTA2国际邀请赛 IG战队官方纪录片
2014/07/21 DOTA
Python中用于去除空格的三个函数的使用小结
2015/04/07 Python
Python3使用PyQt5制作简单的画板/手写板实例
2017/10/19 Python
pandas 使用apply同时处理两列数据的方法
2018/04/20 Python
浅谈Python traceback的优雅处理
2018/08/31 Python
python执行CMD指令,并获取返回的方法
2018/12/19 Python
python实现关闭第三方窗口的方法
2019/06/28 Python
Python Pandas数据结构简单介绍
2019/07/03 Python
windows环境中利用celery实现简单任务队列过程解析
2019/11/29 Python
基于pygame实现童年掌机打砖块游戏
2020/02/25 Python
解决python Jupyter不能导入外部包问题
2020/04/15 Python
pip/anaconda修改镜像源,加快python模块安装速度的操作
2021/03/04 Python
Jacadi Paris美国官方网站:法国童装品牌
2017/10/15 全球购物
介绍一下代理模式(Proxy)
2014/10/17 面试题
自动化系在校本科生求职信
2013/10/23 职场文书
《小小竹排画中游》教学反思
2014/02/26 职场文书
经贸专业毕业生求职信
2014/03/23 职场文书
上班迟到检讨书范文300字
2014/11/02 职场文书
结婚通知短信大全
2015/04/17 职场文书