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 相关文章推荐
js中function()使用方法
Dec 24 Javascript
实例分析js和C#中使用正则表达式匹配a标签
Nov 26 Javascript
JavaScript检查弹出窗口是否被阻拦的方法技巧
Mar 13 Javascript
javascript 应用小技巧方法汇总
Jul 05 Javascript
jQuery实用技巧必备(上)
Nov 02 Javascript
javascript html5实现表单验证
Mar 01 Javascript
ajax跨域调用webservice的实现代码
May 09 Javascript
JS实现json的序列化和反序列化功能示例
Jun 13 Javascript
js微信应用场景之微信音乐相册案例分享
Aug 11 Javascript
vue-router 路由基础的详解
Oct 17 Javascript
JavaScript工具库之Lodash详解
Jun 15 Javascript
基于layui的下拉列表的数据回显方法
Sep 24 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中使用Oracle数据库(1)
2006/10/09 PHP
在PHP中使用curl_init函数的说明
2010/11/02 PHP
PHP中使用CURL模拟登录并获取数据实例
2014/07/01 PHP
PHP将Excel导入数据库及数据库数据导出至Excel的方法
2015/06/24 PHP
基于swoole实现多人聊天室
2018/06/14 PHP
面向对象的编程思想在javascript中的运用上部
2009/11/20 Javascript
jquery获得页面元素的坐标值实现思路及代码
2013/04/15 Javascript
jquery 实现密码框的显示与隐藏示例代码
2013/09/18 Javascript
jQuery中$.click()无效问题分析
2015/01/29 Javascript
JavaScript插件化开发教程(六)
2015/02/01 Javascript
jQuery获取上传文件的名称的正则表达式
2015/05/21 Javascript
javascript实现的多个层切换效果通用函数实例
2015/07/06 Javascript
javascript实现input file上传图片预览效果
2015/12/31 Javascript
浅谈Javascript事件对象
2017/02/05 Javascript
Vuejs中使用markdown服务器端渲染的示例
2017/11/22 Javascript
vue项目中导入swiper插件的方法
2018/01/30 Javascript
JavaScript实现获取select下拉框中第一个值的方法
2018/02/06 Javascript
vue-lazyload图片延迟加载插件的实例讲解
2018/02/09 Javascript
vue动态设置img的src路径实例
2018/09/18 Javascript
解决layui-open关闭自身窗口的问题
2019/09/10 Javascript
解决layui调用自定义方法提示未定义的问题
2019/09/14 Javascript
基于js实现数组相邻元素上移下移
2020/05/19 Javascript
使用Python的Flask框架构建大型Web应用程序的结构示例
2016/06/04 Python
Python 获得13位unix时间戳的方法
2017/10/20 Python
python中wx模块的具体使用方法
2020/05/15 Python
Python Scrapy图片爬取原理及代码实例
2020/06/12 Python
css3的transform造成z-index无效解决方案
2014/12/04 HTML / CSS
Maisons du Monde德国:法国家具和装饰的市场领导者
2019/07/26 全球购物
面向中国市场的在线海淘美妆零售网站:Beauty House美丽屋
2021/03/02 全球购物
初中女生自我鉴定
2013/12/19 职场文书
会计学生自我鉴定
2014/02/06 职场文书
致100米运动员广播稿
2014/02/14 职场文书
幸福中国演讲稿
2014/09/12 职场文书
护士2015年终工作总结
2015/04/29 职场文书
李强为自己工作观后感
2015/06/11 职场文书
2016护理专业求职自荐书
2016/01/28 职场文书