vue传参params参数不能混用?

说下为什么会有这个问题,(1)因为已有路径我不能改,所以把name也放在路径上是不行的(2)query确实可以把参数带过去,但由于这个参数是临时的,因此刷新后不再需要,所以我需要用params

我设置了某个路由,/test/:id,然后我通过params传参,代码如下

this.$router.push({
    // 其他内容
    params: {
       id: 1,
       name: 'test'
    }
})

最终通过this.$router.params只能获取到id,不能获取到name参数,是不能混用吗?

是我自己文档没看仔细~~~

如果使用了path,则params会被忽略

https://router.vuejs.org/zh/guide/essentials/navigation.html

WX20191119-104406.png

阅读 4.5k
3 个回答

亲测有效
图片描述

this.$router.push({
  name: '群发记录',
  params: {
    id: 'bestime',
    name: '张三'
  }
})
          {
            path: 'record/:id',
            name: '群发记录',
            component: () => import(/* webpackChunkName: "record" */'@components/group-send/record.vue'),
          }
export default {
  mounted () {
    console.log(this.$route.params)
  }
}

name不让放路径里面,又需要提取到name,刷新又不需要了,那你放vuex里面或者根组件里面

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题