Vue router scrollBehavior returns 往返路径相同

Vue router scrollBehavior returns same path for both to and from

我想用 scrollBehavior 检查路由路径的 tofrom 来管理滚动行为。

global.router = new VueRouter({
    routes,
    scrollBehavior(to, from, savedPosition) {
        console.log('>>> to', to);
        console.log('>>> from', from);
        switch (to.path) {
            case '/in-list':
                break;
            case '/your-list':
                break;
            default:
                return {x: 0, y: 0}
        }
    },
    mode: 'history',
});

假设,我从关于页面导航到列表中您的列表页,我要return {x: 0, y: 0}。但是,在 In-listYour-list 之间导航时,我不希望有这种行为。

但是,tofromreturn两者的路径相同。它们都 return to.path 所以我无法检查它导航到哪里 from。我在这里错过了什么?

好的,问题出在我的版本上。我正在使用 ^2.2.1 并升级到最新版本 2.7.0。但是,此问题已在 2.3.1.

版本中修复

我在 closed issues of Vue-router 中看到了这个问题。希望这会对某些人有所帮助。