如何在vue-router上回退/回退?

好的,简单解释一下:

我有3页。

  • 第1页(首页)
  • 第2页(菜单)
  • 第3页(关于)

第1页有-

<router-link  to="/menu">

单击该按钮将转到“ /菜单”。

目前,第2页(菜单)有一个

<router-link  to="/">

按钮,然后单击此按钮,它将返回到先前的位置“ /”第1页(主页)。

但是我不想为路由器的每个页面创建一个组件以“返回”上一页(好像我有100个页面,这可能会路由很多工作)。有没有办法用vue-router做到这一点?类似于window.history.back()

好奇是否有办法做到这一点,因为我在文档中找不到它。

提前致谢!约翰

Sam梅小胖2020/03/11 11:51:01

另一种解决方案是使用vue-router-back-mixin

import BackMixin from `vue-router-back-mixin`

export default {
  ...
  mixins: [BackMixin],
  methods() {
    goBack() {
      this.backMixin_handleBack()
    }
  }
  ...
}
JinJin西门神乐2020/03/11 11:51:01

您可以使用程序化导航。要返回,请使用以下命令:

router.go(n) 

其中n可以是正数或负数(返回)。这与history.back()相同,因此您可以使用以下元素:

<a @click="$router.go(-1)">back</a>