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)

}

})

相关推荐
taocarts_bidfans几秒前
Taoify 站点访问地区限制与 IP 管控配置
前端·javascript·tcp/ip·taoify
狂师5 分钟前
用自然语言控制手机,一条命令让 AI 帮你操作 Android 和 iOS 设备!
前端·开源·测试
Csvn14 分钟前
# 🎨 CSS Container Queries 实战踩坑——从「响应式」到「容器式」
前端
zhangjw3415 分钟前
第36篇:Spring Boot进阶:Web开发+参数校验+全局异常处理
前端·spring boot·后端
老王以为16 分钟前
解剖 Claude Code:逆向工程视角下的入口架构分析
前端·ai编程·claude
Csvn21 分钟前
💰 JavaScript 浮点数精度问题深度剖析——前端金额计算的「定时炸弹」
前端
今日无bug27 分钟前
深入理解 JavaScript 变量提升(Hoisting)
javascript·面试
Csvn32 分钟前
structuredClone:原生深拷贝 API 的正确打开方式
前端
大猫会长36 分钟前
获取favicon.ico的方法
前端·javascript·html
无人生还37 分钟前
从 Vue3 到 React · 快速上手系列第 5 篇:事件处理与表单(受控组件 vs v-model)
前端·vue.js·react.js