详解新手使用vue-router传参时注意事项


Posted in Javascript onJune 06, 2019

1. 使用name和params组合传参

this.$router.push({name: 'details', params: {'id': 233}})

路由配置

import Vue from 'vue'
import Router from 'vue-router'

Vue.use(Router)

export default new Router({
  mode: 'history',
  routes: [
    {
      path: '/details',
      name: 'details',
      component: resolve => require(['../components/details'], resolve)
    }
  ]
})

获取参数

this.$route.params.id // 233

详解新手使用vue-router传参时注意事项

刷新参数丢失 显示 undefined

this.$route.params.id // undefined

详解新手使用vue-router传参时注意事项

注意:此方法第一次跳转是没有问题的,参数也可以传过去,但是刷新页面后,参数就没了 (ps: 这个地方其实还有一个问题,当你传递的参数是number类型,第一次是没有问题的,获取的时候也是number类型,但是当你刷新页面后,number变成string类型,如果涉及计算的建议先类型转换一下)

第一次是预期结果 // 234

console.log(this.$route.params.id + 1)

详解新手使用vue-router传参时注意事项

刷新页面后直接字符串拼接了 // 2331

详解新手使用vue-router传参时注意事项

参数丢失解决方案:

routes: [
    {
      path: '/details/:id', // 这里配置的要和你传递的参数名保持一致
      name: 'details',
      component: resolve => require(['../components/details'], resolve)
    }
  ]

2. path和query组合传参

this.$router.push({path: '/details', query: {id: 666}})
this.$route.query.id // 666

详解新手使用vue-router传参时注意事项

此方法参数会跟在问号后面 例如:/details?id=666,该方法刷新页面不会丢失参数

最后:根据自己的项目选择合适的传参方式

官方文档vue-router

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
(推荐一个超好的JS函数库)S.Sams Lifexperience ScriptClassLib
Apr 29 Javascript
5秒后跳转效果(setInterval/SetTimeOut)
May 03 Javascript
深入探讨JavaScript、JQuery屏蔽网页鼠标右键菜单及禁止选择复制
Jun 10 Javascript
JS验证图片格式和大小并预览的简单实例
Oct 11 Javascript
AngularJS+Bootstrap实现多文件上传与管理
Nov 08 Javascript
jQuery图片拖动组件Dropzone用法示例
Jan 17 Javascript
详解vue中axios请求的封装
Apr 08 Javascript
基于jquery实现的tab选项卡功能示例【附源码下载】
Jun 10 jQuery
微信小程序自定义tabBar在uni-app的适配详解
Sep 30 Javascript
webpack+vue.js构建前端工程化的详细教程
May 10 Javascript
echarts柱状图背景重叠组合而非并列的实现代码
Dec 10 Javascript
vue项目如何监听localStorage或sessionStorage的变化
Jan 04 Vue.js
vue-cli配置全局sass、less变量的方法
Jun 06 #Javascript
解决vue组件props传值对象获取不到的问题
Jun 06 #Javascript
webpack4之如何编写loader的方法步骤
Jun 06 #Javascript
vue 插件的方法代码详解
Jun 06 #Javascript
jquery+ajax实现上传图片并显示上传进度功能【附php后台接收】
Jun 06 #jQuery
node.js的http.createServer过程深入解析
Jun 06 #Javascript
vue中keep-alive组件的入门使用教程
Jun 06 #Javascript
You might like
Memcache 在PHP中的使用技巧
2010/02/08 PHP
PHP函数篇之掌握ord()与chr()函数应用
2011/12/05 PHP
jQuery+php实现ajax文件即时上传的详解
2013/06/17 PHP
解析如何去掉CodeIgniter URL中的index.php
2013/06/25 PHP
php中jpgraph类库的使用介绍
2013/08/08 PHP
php判断类是否存在函数class_exists用法分析
2014/11/14 PHP
PHP的Yii框架中行为的定义与绑定方法讲解
2016/03/18 PHP
IE7提供XMLHttpRequest对象为兼容
2007/03/08 Javascript
ExtJS 2.0实用简明教程 之Border区域布局
2009/04/29 Javascript
jquery异步调用页面后台方法‏(asp.net)
2011/03/01 Javascript
jquery 延迟执行实例介绍
2013/08/20 Javascript
js中创建对象的几种方式示例介绍
2014/01/26 Javascript
常用的jquery模板插件——jQuery Boilerplate介绍
2014/09/23 Javascript
JS实现FLASH幻灯片图片切换效果的方法
2015/03/04 Javascript
深入学习nodejs中的async模块的使用方法
2017/07/12 NodeJs
微信小程序http连接访问解决方案的示例
2018/11/05 Javascript
[01:18:43]2014 DOTA2华西杯精英邀请赛5 24 iG VS DK
2014/05/25 DOTA
[04:02]2014DOTA2国际邀请赛 BBC每日综述中国战队将再度登顶
2014/07/21 DOTA
[01:06:18]DOTA2-DPC中国联赛 正赛 Phoenix vs Dynasty BO3 第二场 1月26日
2021/03/11 DOTA
tensorflow TFRecords文件的生成和读取的方法
2018/02/06 Python
Python Learning 列表的更多操作及示例代码
2018/08/22 Python
5分钟 Pipenv 上手指南
2018/12/20 Python
pytorch使用Variable实现线性回归
2019/05/21 Python
对Python生成器、装饰器、递归的使用详解
2019/07/19 Python
Python简单实现区域生长方式
2020/01/16 Python
python绘制玫瑰的实现代码
2020/03/02 Python
html5实现滑块功能之type="range"属性
2020/02/18 HTML / CSS
adidas官方旗舰店:德国运动用品制造商
2017/11/25 全球购物
KTV的创业计划书范文
2014/02/02 职场文书
行政主管职责范本
2014/03/07 职场文书
小城镇建设汇报材料
2014/08/16 职场文书
政风行风评议个人心得体会
2014/10/29 职场文书
2014年办公室人员工作总结
2014/12/09 职场文书
大学生活委员竞选稿
2015/11/21 职场文书
2016年大学生暑期社会实践方案
2015/11/26 职场文书
Python实战之大鱼吃小鱼游戏的实现
2022/04/01 Python