滚动行为
2023年05月26日
一、认识
使用前端路由,当切换到新路由时,想要页面滚到顶部,或者是保持原先的滚动位置,就像重新加载页面那样。 vue-router
能做到,而且更好,它让你可以自定义路由切换时页面如何滚动。注意: 这个功能只在支持 history.pushState
的浏览器中可用。
二、语法
const router = createRouter({
routes: [],
history: createWebHistory(import.meta.env.BASE_URL),
scrollBehavior (to, from, savedPosition) {
return {
top: 0,
left: 0 ,
behavior?: 'smooth' | 'instant' | 'auto',
el?: '#main' | document.getElementById('main') | hash,
}
}
});
三、用法
3.1 基础滚动
scrollBehavior
可以返回一个 ScrollToOptions
位置对象。ScrollToOptions
。
const router = createRouter({
routes: [],
history: createWebHistory(import.meta.env.BASE_URL),
scrollBehavior (to, from, savedPosition) {
return { top: 0, left: 0 , behavior?: 'smooth' | ''}
}
});