vue切换路由,$router.push的时候页面到顶端的滚动距离仍会保持不变。

解决办法很简单,如下,直接监测watch路由变化,然后将body的滚动距离scrollTop赋值为0。

1

2

3

4

5

6

7

8

export default {

  watch:{

   '$route':function(to,from){

           document.body.scrollTop = 0;

     document.documentElement.scrollTop = 0;

   }

  }

 }

补充: hash模式下才会导致上述问题,history模式下vue官网有更好的处理方法。

Logo

前往低代码交流专区

更多推荐