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)

}

})

相关推荐
paopaokaka_luck17 分钟前
基于SpringBoot+Vue的非遗文化传承管理系统(websocket即时通讯、协同过滤算法、支付宝沙盒支付、可分享链接、功能量非常大)
java·数据库·vue.js·spring boot·后端·spring·小程序
蓝倾29 分钟前
淘宝批量获取商品SKU实战案例
前端·后端·api
comelong34 分钟前
Docker容器启动postgres端口映射失败问题
前端
花海如潮淹36 分钟前
硬件产品研发管理工具实战指南
前端·python
用户38022585982436 分钟前
vue3源码解析:依赖收集
前端·vue.js
用户75794199497036 分钟前
基于JavaScript的简易Git
javascript
WaiterL36 分钟前
一文读懂 MCP 与 Agent
前端·人工智能·cursor
gzzeason39 分钟前
使用Vite创建React初始化项目
前端·javascript·react.js
又双叒叕77840 分钟前
React19 新增Hooks:useOptimistic
前端·javascript·react.js
归于尽1 小时前
V8 引擎是如何给 JS"打扫房间"的 ?
前端·javascript