详解vue-router传参的两种方式


Posted in Javascript onSeptember 10, 2018

Vue Router 是 Vue.js 官方的路由管理器。它和 Vue.js 的核心深度集成,让构建单页面应用变得易如反掌。包含的功能有:

  1. 嵌套的路由/视图表
  2. 模块化的、基于组件的路由配置
  3. 路由参数、查询、通配符
  4. 基于 Vue.js 过渡系统的视图过渡效果
  5. 细粒度的导航控制
  6. 带有自动激活的 CSS class 的链接
  7. HTML5 历史模式或 hash 模式,在 IE9 中自动降级
  8. 自定义的滚动条行为

vue-router传参两种方式:params和query

params、query是什么?

    params:/router1/:id ,/router1/123,/router1/789 ,这里的id叫做params
     query:/router1?id=123 ,/router1?id=456 ,这里的id叫做query。

方法1:

    query 方式传参和接收参数

    传参:      

this.$router.push({
       path:'/openAccount',
       query:{id:id}
     });

     接收参数:

        this.$route.query.id

     注意:传参是this.$router,接收参数是this.$route
     两者区别:

        $router为VueRouter实例,想要导航到不同URL,则使用$router.push方法

        $route为当前router跳转对象,里面可以获取name、path、query、params等

方法2:

    params方式传参和接收参数

    传参:

this.$router.push({
       name:'/openAccount',
       params:{
         id: id
       }
     })

    接收参数: this.$route.params.id

    注意:params传参,push里面只能是 name:'xxxx',不能是path:'/xxx',因为params只能用name来引入路由,如果这里写成了path,接收参数页面会是undefined!!!

    二者还有点区别,可以理解为:query相当于get请求,页面跳转的时候,可以在地址栏看到请求参数,而params相当于post请求,参数不会再地址栏中显示

router.js

export default new Router({
 routes: [
  {
   path: '/',
   name: 'login',
   component: Login
  },
  {
   path: '/register',
   name: 'register',
   component: Register
  }
})

组件(传参):

<template>
 <div class="hello">
  <h1>{{ msg }}</h1>
  <button @click="routerTo">click here to news page</button>
 </div>
</template>
<script>
export default {
 name: 'HelloWorld',
 data () {
  return {
   msg: 'Welcome to Your Vue.js App'
  }
 },
 methods:{
  routerTo(){
   this.$router.push({ name: 'register', params: { userId: 123 }});//params方式 这里的name值是在定义route.js时中的name
   //this.$router.push({ path: '/register', query: { userId: 123 }});  //query方式 
  }
 }
}
</script>
<style>
</style>

组件(接收参数)

<template>
 <div>
  {{this.$route.params.userId}}或者{{this.$route.params.userId}}
 </div>
</template>
<script>
</script>

总结

以上所述是小编给大家介绍的vue-router传参的两种方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Jquery倒数计时按钮setTimeout的实例代码
Jul 04 Javascript
js 剪切板应用clipboardData详细解析
Dec 17 Javascript
js实现图片旋转的三种方法
Apr 10 Javascript
JavaScript计算某一天是星期几的方法
Aug 05 Javascript
Bootstrap3.0建站教程(一)之bootstrap表单元素排版
Jun 01 Javascript
JavaScript实战之菜单特效
Aug 16 Javascript
select获取下拉框的值 下拉框默认选中方法
Feb 28 Javascript
详解VUE-地区选择器(V-Distpicker)组件使用心得
May 07 Javascript
轻松学习JavaScript函数中的 Rest 参数
May 30 Javascript
vue.js的状态管理vuex中store的使用详解
Nov 08 Javascript
js实现无限层级树形数据结构(创新算法)
Feb 27 Javascript
一篇文章看懂JavaScript中的回调
Jan 05 Javascript
详解Vue.js使用Swiper.js在iOS
Sep 10 #Javascript
webuploader分片上传的实现代码(前后端分离)
Sep 10 #Javascript
在Vue 中使用Typescript的示例代码
Sep 10 #Javascript
ES6使用export和import实现模块化的方法
Sep 10 #Javascript
Vuejs 实现简易 todoList 功能 与 组件实例代码
Sep 10 #Javascript
浅谈微信小程序flex布局基础
Sep 10 #Javascript
微信小程序文章详情页面实现代码
Sep 10 #Javascript
You might like
PHP源代码数组统计count分析
2011/08/02 PHP
input file获得文件根目录简单实现
2013/04/26 PHP
php计算给定时间之前的函数用法实例
2015/04/03 PHP
分享PHP-pcntl 实现多进程代码
2016/09/30 PHP
PHP实现权限管理功能示例
2017/09/22 PHP
Laravel 微信小程序后端实现用户登录的示例代码
2019/11/26 PHP
Ajax一统天下之Dojo整合篇
2007/03/24 Javascript
JavaScript中出现乱码的处理心得
2009/12/24 Javascript
浏览器常用高宽的jquery插件
2011/02/24 Javascript
iframe 异步加载技术及性能分析
2011/07/19 Javascript
javascript面向对象程序设计(一)
2015/01/29 Javascript
moment.js轻松实现获取当前日期是当年的第几周
2015/02/05 Javascript
[原创]javascript typeof id==='string'?document.getElementById(id):id解释
2016/11/02 Javascript
JavaScript实现左右下拉框动态增删示例
2017/03/09 Javascript
基于javascript的异步编程实例详解
2017/04/10 Javascript
ES6扩展运算符的用途实例详解
2017/08/20 Javascript
使用3D引擎threeJS实现星空粒子移动效果
2020/09/13 Javascript
一秒学会微信小程序制作table表格
2019/02/14 Javascript
解决vue页面渲染但dom没渲染的操作
2020/07/27 Javascript
[56:24]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#1Liquid VS MVP.Phx第二局
2016/03/04 DOTA
python实现比较两段文本不同之处的方法
2015/05/30 Python
Python中有趣在__call__函数
2015/06/21 Python
Python的Flask框架中集成CKeditor富文本编辑器的教程
2016/06/13 Python
Python实现点阵字体读取与转换的方法
2019/01/29 Python
python可视化实现KNN算法
2019/10/16 Python
关于Django Models CharField 参数说明
2020/03/31 Python
Selenium基于PIL实现拼接滚动截图
2020/04/10 Python
如何基于python把文字图片写入word文档
2020/07/31 Python
python eventlet绿化和patch原理
2020/11/21 Python
奥斯汀独木舟和皮划艇:Austin Canoe & Kayak
2018/05/22 全球购物
芬兰灯具网上商店:Nettilamppu.fi
2018/06/30 全球购物
财务管理专业推荐信
2013/11/19 职场文书
人民教师求职自荐信
2014/03/12 职场文书
体育系毕业生求职自荐信
2014/04/16 职场文书
农村门前三包责任书
2014/07/25 职场文书
创业计划书之DIY自助厨房
2019/09/06 职场文书