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)

}

})

相关推荐
默默学前端2 分钟前
JavaScript 中 call、apply、bind 的区别
开发语言·前端·javascript
宁雨桥6 分钟前
前端设计模式面试题大全
前端·设计模式
Cg136269159749 分钟前
JS函数表示
前端·html
℘团子এ9 分钟前
vue3中,el-table表格固定列后出现表格线段折断的问题
javascript·vue.js·elementui
在屏幕前出油14 分钟前
02. FastAPI——路由
服务器·前端·后端·python·pycharm·fastapi
勿芮介33 分钟前
【大模型应用】在window/linux上卸载OpenClaw
java·服务器·前端
摸鱼仙人~36 分钟前
前端面试手写核心 Cheat Sheet(终极精简版)
前端
馬致远1 小时前
Win7 配置 Vue脚手架
javascript·vue.js·ecmascript
Ashley_Amanda1 小时前
深入浅出Web Dynpro:SAP企业级Web应用开发全面解析
前端