vue路由跳轉時定位到頁面頂部的方法
在做vue項目時,發現路由跳轉之后,頁面默認停留在當前瀏覽的位置,但是很多時候我們想要的是路由跳轉之后,頁面重新定位到頂部,下面我總結了比較常用的方法:
方法一:在router下的index.js配置:
scrollBehavior(to,from,savedPosition){
if (savedPosition){
return savedPosition // 按下 后退/前進 按鈕時,類似瀏覽器的原生表現
}else {
return {x:0,y:0} // 讓頁面滾動到頂部
}
}
方法二:在main.js入口文件寫入:
router.afterEach((to,from,next) => {
window.scrollTo(0,0);
// 或
// window.scroll(0, 0);
});
或
router.afterEach((to,from,next) => {
document.body.scrollTop =0;
document.documentElement.scrollTop = 0;
});
不足之處,多多包涵!如果有其他好的方法,歡迎留言!