vue中组件3种编程式路由跳转传参

路由传参

1、路由配置传参
2、query传参
3、params传参

1、路由配置传参(刷新页面不会丢失参数,url会携带参数)

A组件跳转B组件传参
A组件

goTopage() {
     let id = 123
     this.$router.push({
       path: `/music/${id}`,
     })
 },

路由配置

{
    id: 1002,
    path: '/music/:id',
    component: Find,
},

B组件

mounted(){
  console.log(':id传参', this.$route.params.id)  //123
}

2、query传参(刷新页面不会丢失参数,url会携带参数)

A组件跳转B组件传参
A组件

goTopage() {
      this.$router.push({
        path: '/find',
        query: {
          name: '小溪流',
        },
      })
 },

B组件

mounted(){
  console.log('query传参的this.$route', this.$route)  
  onsole.log('query传参', this.$route.query.name)  //小溪流
}
image.png

3、params传参(刷新页面丢失参数,url不会携带参数)

解决丢失参数问题可用vuex或localstorage存储参数
A组件跳转B组件传参
A组件

goTopage() {
      this.$router.push({
        //params传参用的是name
        name: '公司新闻',
        params: {
          name: '小溪流',
        },
      })
 },

B组件

mounted(){
  console.log('params传参的this.$route', this.$route)  
  onsole.log('params传参', this.$route.params.name)  //小溪流
}
image.png
//vue-router有两个全局的$router、$route
this.$router.push()
this.$router.go()   //location.reload()
this.$router.replace()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 【精时力学习日志】 本训练营:100天阅读营(2021年) 今日主题:2-5 笔记术·讲解《完全图解》 学习日期:...
    echo_41cd阅读 231评论 0 0
  • 突然醒觉了,原来是要控制、管理好情绪,而不是终止那些负面情绪产生。我这段时间一直在学着控制情绪,同时又学了评判和演...
    a吃饭阅读 504评论 0 2
  • 24号来到义城,昨天去KTV唱歌,憨憨被人说知性,第一次被人这样子评价,看来以后我还是要多读书了,诚如金说的一样 ...
    憨憨漂阅读 147评论 0 0
  • 我为什么看到孩子写的作业会那么的害怕呢?我到底在怕什么,就像昨晚看到孩子写的那些字词,自己气不打一处来,我的第一反...
    月茄子阅读 138评论 0 1
  • 京❤️达总店 杨顺永 2021年7月15日 落地真经严格就是爱,放纵既是害 7月总产值16万5 7月台词目标100...
    忠于我阅读 148评论 0 0