vue 中,切换新路由,想要页面滚动到顶部,或后退时,如何实现保持原先的滚动位置

scrollBehavior 方法接收 to 和 from 路由对象。第三个参数对象 savedPosition 当且仅当通过浏览器的前进/后退按钮触发时才可用。

const router = new 
     VueRouter({ routes: [...],
     scrollBehavior (to,from,savedPosition){
     // return 期望滚动到哪个位置
     // 返回原来的位置
     // return savePosition
     // 返回页面顶部
     return { x:0, y:0 }
    }
 })
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 写在前面在Vue项目中,当我们在A页面滚动到中间位置, 然后跳转到B,在从B进入到A页面时,本应该回到A页面顶部,...
    Yuhoo阅读 3,129评论 0 2
  • 导航守卫 正如其名,vue-router提供的导航守卫主要用来通过跳转或取消的方式守卫,有多种机会植入路由导航过程...
    前端_周瑾阅读 1,271评论 0 4
  • 一、Vue scrollBehavior 滚动行为 测试中Google浏览器不存在该问题。 通常我们很少会对页面回...
    无剑_君阅读 1,784评论 0 3
  • vue中记录上浏览位置的方法场景描述: 在当前页面浏览时,点击进入其他页面,再返回时希望滚动到浏览时的位置 解决方...
    ismyshellyiqi阅读 4,432评论 0 0
  • vue笔记 一.vue实例 vue的生命周期 beforeCreate(创建前), created(创建后), b...
    秋殇1002阅读 1,076评论 0 1