vue-router query和params传参(接收参数),$router、$route的区别

连接:https://www.cnblogs.com/zhangruiqi/p/9412539.htmlhtml

1.query方式传参和接收参数

传参: 
this.$router.push({
        path:'/xxx'
        query:{
          id:id
        }
      })
  
接收参数:
this.$route.query.id

2.params方式传参和接收参数

传参: 
this.$router.push({
        name:'xxx'
        params:{
          id:id
        }
      })
  
接收参数:
this.$route.params.id

 

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

另外,两者还有点区别,直白的来讲query至关于get请求,页面跳转的时候,能够在地址栏看到请求参数,而params至关于post请求,参数不会再地址栏中显示

注意:传参是this.$router,接收参数是this.$route,这里千万要看清了!!!

 

3. this.$router 和this.$route有何区别?ui

在控制台打印二者能够很明显的看出二者的一些区别:this

 

  • 1.$router为VueRouter实例,想要导航到不一样URL,则使用$router.push方法
  • 2.$route为当前router跳转对象,里面能够获取name、path、query、params等
相关文章
相关标签/搜索