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 相关文章推荐
用倒置滤镜把div倒置,再把table倒置。
Jul 31 Javascript
jQuery 树形结构的选择器
Feb 15 Javascript
js+css在交互上的应用
Jul 18 Javascript
JS模块与命名空间的介绍
Mar 22 Javascript
JQuery中两个ul标签的li互相移动实现方法
May 18 Javascript
js+cookies实现悬浮购物车的方法
May 25 Javascript
使用AngularJS实现表单向导的方法
Jun 19 Javascript
在AngularJS中使用jQuery的zTree插件的方法
Apr 21 Javascript
webpack+vue中使用别名路径引用静态图片地址
Nov 20 Javascript
jquery获取transform里的值实现方法
Dec 12 jQuery
代码实例ajax实现点击加载更多数据图片
Oct 12 Javascript
vue响应式更新机制及不使用框架实现简单的数据双向绑定问题
Jun 27 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 翻页 实例代码
2009/08/07 PHP
Symfony生成二维码的方法
2016/02/04 PHP
Yii+MYSQL锁表防止并发情况下重复数据的方法
2016/07/14 PHP
PHP设计模式之单例模式原理与实现方法分析
2018/04/25 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
PHP操作Redis常用命令的实例详解
2020/12/23 PHP
js滚动条回到顶部的代码
2011/12/06 Javascript
jquery.qrcode在线生成二维码使用示例
2013/08/21 Javascript
js简单判断移动端系统的方法
2016/02/25 Javascript
高效利用Angular中内置服务$http、$location等
2016/03/22 Javascript
浅析$.getJSON异步请求和同步请求
2016/06/06 Javascript
JavaScript中 this 指向问题深度解析
2017/02/21 Javascript
jQuery插件HighCharts实现的2D对数饼图效果示例【附demo源码下载】
2017/03/09 Javascript
Angularjs中使用轮播图指令swiper
2017/05/30 Javascript
javaScript之split与join的区别(详解)
2017/11/08 Javascript
JavaScript的setter与getter方法
2017/11/29 Javascript
详解swipe使用及竖屏页面滚动方法
2018/06/28 Javascript
vue el-table实现行内编辑功能
2019/12/11 Javascript
Vue左滑组件slider使用详解
2020/08/21 Javascript
Python中的anydbm模版和shelve模版使用指南
2015/07/09 Python
Python3非对称加密算法RSA实例详解
2018/12/06 Python
Python Pandas实现数据分组求平均值并填充nan的示例
2019/07/04 Python
Opencv图像处理:如何判断图片里某个颜色值占的比例
2020/06/03 Python
Python timeit模块原理及使用方法
2020/10/10 Python
celery在python爬虫中定时操作实例讲解
2020/11/27 Python
用CSS3实现无限循环的无缝滚动的示例代码
2017/11/01 HTML / CSS
Css3实现无缝滚动防抖
2020/09/14 HTML / CSS
使用canvas实现黑客帝国数字雨效果
2020/01/02 HTML / CSS
英国最大的邮寄种子和植物公司:Thompson & Morgan
2017/09/21 全球购物
四年级评语大全
2014/04/21 职场文书
2015年护士节活动总结
2015/02/10 职场文书
2015年妇女工作总结
2015/05/14 职场文书
董事长开业致辞
2015/07/29 职场文书
Mysql官方性能测试工具mysqlslap的使用简介
2021/05/21 MySQL
WINDOWS 64位 下安装配置mysql8.0.25最详细的教程
2022/03/22 MySQL
Win11 KB5015814遇安装失败 影响开始菜单性能解决方法
2022/07/15 数码科技