vue3滚动条重置

由于单页面应用的原理,使用vue搭建的项目在路由切换时并不会刷新整个页面。因此在有滚动条的页面会存在滚动条不能自动重置的问题。在最近的项目中就遇到了这种问题,因此记录一下。

1.切换路由:

<el-main>

<!--<router-view />-->

<router-view v-slot="{ Component }">

<transition name="fade-slide" mode="out-in" appear>

<component :is="Component" id="main" />

</transition>

</router-view>

</el-main>
onBeforeRouteUpdate((to, from) => {

// 由于路由设置了0.3s过渡效果,所以此处设置了0.3s定时器。避免页面切换效果突兀。

setTimeout(() => {

document.getElementById("main").scrollIntoView({

behavior: "smooth",

block: "start",

});

}, 300);

})

2.el-table

<el-table ref="tableRef"></el-table>
onUpdated(() => {

console.log(tableRef.value)

if(tableRef.value != null) {

tableRef.value.setScrollTop(0)

tableRef.value.setScrollLeft(0)

}

})

相关推荐
JarvanMo16 分钟前
Flutter CI/CD 完整指南:从 Bitbucket Pipelines 到 Play Store 自动化部署
前端
工业甲酰苯胺17 分钟前
TypeScript 中的单例模式
javascript·单例模式·typescript
nvd1123 分钟前
Lit.js 入门介绍:与 React 的对比
开发语言·javascript·react.js
JarvanMo24 分钟前
Flutter3.38 带来了什么
前端
倚栏听风雨40 分钟前
React中useCallback
前端
不说别的就是很菜42 分钟前
【前端面试】前端工程化篇
前端·面试·职场和发展
老华带你飞1 小时前
记录生活系统|记录美好|健康管理|基于java+Android+微信小程序的记录生活系统设计与实现(源码+数据库+文档)
android·java·数据库·vue.js·生活·毕设·记录生活系统
亿元程序员1 小时前
微信小游戏包体限制4M,一个字体就11.24M,怎么玩?
前端
涔溪1 小时前
vue中预览pdf文件
前端·vue.js·pdf
孤狼warrior1 小时前
目前最新同花顺金融股市数据爬取 JS逆向+node.js补浏览器环境
javascript·爬虫·python·金融·node.js