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)

}

})

相关推荐
小贤哥14 分钟前
死磕这几道js手写题
前端·程序员
Lee川15 分钟前
🌐 深入 Chrome 浏览器:从单线程到多进程架构的进化之路
前端·架构·前端框架
学以智用18 分钟前
Vue 3 项目核心配置文件详解
前端·vue.js
工边页字21 分钟前
AI 开发必懂:Context Window(上下文窗口)到底是什么?
前端·人工智能·后端
Mr_Swilder22 分钟前
intel显卡本地部署大模型
前端
yuki_uix23 分钟前
Promise 与 async/await:从回调地狱到优雅异步的演进之路
前端·javascript
over69726 分钟前
📸《拍照记单词》—— 从零到上线的完整开发指南(超详细版)
前端·人工智能·产品
毛骗导演27 分钟前
万字解析 OpenClaw 源码架构-架构概览
前端·架构
天才熊猫君35 分钟前
Flex布局深度解析:为什么我的Flex项目不按预期收缩?
前端
风雪心35 分钟前
Antd组件库Form的onValuesChange和getFieldsValue的调用时机分析
前端