VUE当我使用$ router.push。()跳到另一页时,后退按钮将跳到最后一页

时间:2020-09-17 09:16:23

标签: javascript html vue.js

我的Vue项目中有一个HTML页面 time list

当我按下“ +”按钮时,它将跳到此页面 Timing

此页面供用户计时,最后一页是时间列表。

现在,我正在TimingPage中进行计时,然后按“保存”(保存),它将转到TimeList页面,并打印我设置的时间。

然后,我按下“本机”后退按钮(!!!此本机按钮不是我页面中的后退按钮,不是浏览器或智能手机中的后退按钮!!),它将转到“计时”页面而不是首页!

就像在浏览时单击“后退”按钮一样,它会跳到您刚刚访问的页面,而不是前一页。

有我的代码:

<van-nav-bar
  :title="$t('socketPage.addTiming')"
  :left-text="$t('socketPage.cancel')"
  :right-text="$t('socketPage.save')"
  @click-left="$router.push('/timeList')"
  @click-right="saveTime();$router.push('/timeList')"
></van-nav-bar>

我用$ router.push。()跳转了。

对不起,我的英语不好。

1 个答案:

答案 0 :(得分:1)

如果我不清楚您的理解,那么问题在于您的路由方式。使用$router.push()总是会将路由添加到路由堆栈中,因此返回将跳转到堆栈的上一页。

要解决此问题,请在TimingPage中使用$router.replace()$router.pop()方法

要进一步了解它们之间的区别,请检查this

HTH