Vue.js Scrollbehavior不使用nuxt链接

Vue.js Scrollbehavior不使用nuxt链接,vue.js,scroll,nuxt.js,Vue.js,Scroll,Nuxt.js,我希望我的应用程序在导航回我的一条路线时保持相同的滚动位置。如果我使用浏览器的“后退”按钮向后导航,则它会工作,但当我单击链接(使用nuxt link创建)时,当导航到我的路线时,滚动位置会重置为0 我尝试用我自己的函数替换nuxt.config.js中的scrollBehavior函数。调用了该函数,但savedPosition参数为null,因此这显然是重置滚动位置的原因。同样,如果我使用浏览器的“后退”按钮而不是单击来自其他路径的链接,则没有问题,savedPosition参数设置为其预期

我希望我的应用程序在导航回我的一条路线时保持相同的滚动位置。如果我使用浏览器的“后退”按钮向后导航,则它会工作,但当我单击链接(使用nuxt link创建)时,当导航到我的路线时,滚动位置会重置为0


我尝试用我自己的函数替换nuxt.config.js中的scrollBehavior函数。调用了该函数,但savedPosition参数为null,因此这显然是重置滚动位置的原因。同样,如果我使用浏览器的“后退”按钮而不是单击来自其他路径的链接,则没有问题,savedPosition参数设置为其预期值,并发生滚动。我不明白为什么在使用链接导航时它不起作用,以及我能做些什么来解决这个问题。任何帮助都将不胜感激。

我相信发生这种情况的原因是
nuxt link
正在将一个新页面推到后台堆栈上

考虑到这一点,
ScrollBehavior
将使用null
savedPosition
参数调用,因为这是一个全新的页面。这类似于在执行编程导航时调用
router.push()

我无法找到任何严格使用
numxt link
模拟后退按钮行为的方法,但使用以下方法实现起来很简单:


我相信发生这种情况的原因是
numxt-link
正在将一个新页面推到后台堆栈上

考虑到这一点,
ScrollBehavior
将使用null
savedPosition
参数调用,因为这是一个全新的页面。这类似于在执行编程导航时调用
router.push()

我无法找到任何严格使用
numxt link
模拟后退按钮行为的方法,但使用以下方法实现起来很简单:


谢谢你的回答。至少这意味着我没有疯。我想这是一个可以接受的解决方法,我现在就使用它。谢谢你的回答。至少这意味着我没有疯。我想这是一个可以接受的解决方法,我现在就使用它。
// go backward one page
router.go(-1)