zoukankan      html  css  js  c++  java
  • vue-router--路由传参

    今天做项目时踩到了vue-router传参的坑(query和params),所以决定总结一下二者的区别。
     
    1.query方式传参和接收参数
    传参: this.$router.push({ path:'/xxx', query:{ id:id } })
    接收参数: this.$route.query.id
    注意:传参是this.$router,接收参数是this.$route,这里千万要看清了!!!
     
    this.$router 和this.$route有何区别?
    在控制台打印两者可以很明显的看出两者的一些区别:
    • 1.$router为VueRouter实例,想要导航到不同URL,则使用$router.push方法
    • 2.$route为当前router跳转对象,里面可以获取name、path、query、params等
    2.params方式传参和接收参数
    传参: this.$router.push({ name:'xxx', params:{ id:id } })
    接收参数: this.$route.params.id
    注意:params传参,push里面只能是 name:'xxxx',不能是path:'/xxx',因为params只能用name来引入路由,如果这里写成了path,接收参数页面会是undefined!!!
     
    另外,二者还有点区别,直白的来说query相当于get请求,页面跳转的时候,可以在地址栏看到请求参数,而params相当于post请求,参数不会再地址栏中显示
     

  • 相关阅读:
    The hardest problem ever
    1146 Topological Order
    1147 Heaps
    Weekly Contest 184
    1148 Werewolf
    1149 Dangerous Goods Packaging
    1150 Travelling Salesman Problem
    1151 LCA in a Binary Tree (30point(s))
    1152 Google Recruitment
    美团2020春招笔试
  • 原文地址:https://www.cnblogs.com/absoluteli/p/14052290.html
Copyright © 2011-2022 走看看