vue 路由使用params获取不到数据

路由配置了name

{
  path: 'contract-list', 
  component: () => 
  import('@/views/purchase/contractList'), 
  name:'purchaseContractList', 
  meta: { title: 'purchaseContractList' }},

使用:

this.$router.push({ name: 'purchaseContractList', params: {  type: '待完成', }})

获取:

console.log('params', this.$route.params)

结果:
image.png
怎么也获取不到params的值
但是换成query却可以获取到值,请问这是怎么回事啊?

image.png

阅读 3.3k
2 个回答

我写了代码尝试过了,是可以的,而且打印出来的是一个普通的对象。
你打印出来的为什么是个{__ob__: Observer}这种的?
另外,你打印出来的不是有vmCount这个变量吗,你可以看一下这个是怎么设置的

大概率是声明的问题,

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