Vue Router router.push 方法在嵌套路由中如何正确指向子路由?

作者站长头像
站长
· 阅读数 6

关于vue-router的嵌套路由和编程式导航的问题

在向子路由的导航中,我发现router.push方法会将本级路由修改而不是导向子路由router.push('mainPageView')在当前路由为'/MainPage'的情况下,会将路由信息更改为'/mainPageView',而不是期望的'/MainPage/mianPageView',导致Vue Router router.push 方法在嵌套路由中如何正确指向子路由?

我试着使用完全地址

router.push(`${route.fullPath}/mainPageView`)

发现能够正常使用。但在多级的嵌套路由中,拼凑完全地址十分麻烦,并且在网上查的资料也都是不加/的子路由push应当是拼接在本级路由后的,希望得到不使用完全地址便能够正常路由的方法。

回复
1个回答
avatar
test
2024-06-26

尝试使用 router.push({ name: 'mainPageView'}) 这样的方式?使用路由name去跳转?

编程式导航 | Vue Router

回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容