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 相关文章推荐
javascript获取form里的表单元素的示例代码
Feb 14 Javascript
jquery跨域请求示例分享(jquery发送ajax请求)
Mar 25 Javascript
使用jquery 简单实现下拉菜单
Jan 14 Javascript
js+canvas简单绘制圆圈的方法
Jan 28 Javascript
javascript中获取class的简单实现
Jul 12 Javascript
JavaScript的兼容性与调试技巧
Nov 22 Javascript
js实现倒计时效果(小于10补零)
Mar 08 Javascript
JavaScript实现的搜索及高亮显示功能示例
Aug 14 Javascript
vue 组件 全局注册和局部注册的实现
Feb 28 Javascript
vue 设置proxyTable参数进行代理跨域
Apr 09 Javascript
vue 动态绑定背景图片的方法
Aug 10 Javascript
微信小程序抽奖组件的使用步骤
Jan 11 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
建立文件交换功能的脚本(三)
2006/10/09 PHP
php数组中包含中文的排序方法
2014/06/03 PHP
PHP字符串逆序排列实现方法小结【strrev函数,二分法,循环法,递归法】
2017/01/13 PHP
php技巧小结【推荐】
2017/01/19 PHP
laravel 解决多库下的DB::transaction()事务失效问题
2019/10/21 PHP
JavaScript 事件属性绑定带参数的函数
2009/03/13 Javascript
jquery实现点击消失的代码
2014/03/03 Javascript
JavaScript实现三阶幻方算法谜题解答
2014/12/29 Javascript
深入解析JavaScript中的数字对象与字符串对象
2015/10/21 Javascript
使用Node.js搭建静态资源服务详细教程
2017/08/02 Javascript
Vue2.x中利用@font-size引入字体图标报错的解决方法
2018/09/28 Javascript
解决js相同的正则多次调用test()返回的值却不同的问题
2018/10/10 Javascript
Vue 组件注册实例详解
2019/02/23 Javascript
javascript防抖函数debounce详解
2019/06/11 Javascript
javascript/jquery实现点击触发事件的方法分析
2019/11/11 jQuery
[02:49]DOTA2完美大师赛首日观众采访
2017/11/23 DOTA
python列出目录下指定文件与子目录的方法
2015/07/03 Python
Eclipse中Python开发环境搭建简单教程
2016/03/23 Python
python3库numpy数组属性的查看方法
2018/04/17 Python
Python_查看sqlite3表结构,查询语句的示例代码
2019/07/17 Python
Pytorch中Tensor与各种图像格式的相互转化详解
2019/12/26 Python
pytorch中tensor.expand()和tensor.expand_as()函数详解
2019/12/27 Python
django API 中接口的互相调用实例
2020/04/01 Python
美国电子产品主要品牌的授权在线零售商:DataVision
2019/03/23 全球购物
颇特女士:NET-A-PORTER(直邮中国)
2020/07/11 全球购物
冰淇淋店创业计划书范文
2013/12/27 职场文书
运动会稿件300字
2014/02/14 职场文书
模具毕业生推荐信
2014/02/15 职场文书
机关出纳岗位职责
2014/04/03 职场文书
医院护士见习期自我鉴定
2014/09/15 职场文书
基层党员对照检查材料
2014/09/24 职场文书
业务员工作态度散漫检讨书
2014/11/02 职场文书
出差报告范文
2014/11/06 职场文书
2014年银行员工工作总结
2014/11/12 职场文书
2014年调度员工作总结
2014/11/19 职场文书
如何利用python实现列表嵌套字典取值
2022/06/10 Python