vue.js 有没有什么方法可以用来检查你的孩子是在哪个父节点打开的?

iyr7buue  于 2023-03-24  发布在  Vue.js
关注(0)|答案(2)|浏览(109)

我遇到了一个问题,因为我有一个组件在两个地方被用作子组件,我想创建一个返回按钮,将用户发送回正确的路由。我可以用单独的父组件来完成:

<button open ref="backBtn" :back="`/parent1/${this.$route.params.id}/home`" />
<button open ref="backBtn" :back="`/parent2/${this.$route.params.id}/home`" />

但我真正想要的是一个带有方法的按钮,它说:好的,你来自父1?那么用途:back=”/parent1/${this.$route.params.id}/home“,否则,使用:back=”/parent2/${this.$route.params.id}/home
能做到吗?

cqoc49vn

cqoc49vn1#

你可以只做this.$router.back()$router.back(),它会从它来自的地方返回。
如果它不适合你,你可以在你的孩子身上使用this.$parent从你的父母那里获取信息,即使不推荐这样做。

fdbelqdn

fdbelqdn2#

不推荐:

  1. router.go(-1)
  2. router.back()它们以相同的方式工作

最好为每个后退按钮传递导航设置

const username = 'username'
...
<router-link :to="{
   router.push({ name: 'user', params: { username } })
}" />

相关问题