ElementUI中el-tabs标签点击切换el-table闪烁问题

现象:点击切换element ui中el-tabs时候,table会出现闪一下的状况;

初始element ui中el-tabs组件代码如下:

html 复制代码
<el-tabs type="card" v-model="activeName">
  <el-tab-pane label="线路配置" name="first"><lineDetail /></el-tab-pane>
  <el-tab-pane label="车站配置" name="second"> <stationDetail /></el-tab-pane>
  <el-tab-pane label="特殊路段配置" name="three"><specialRoadDetail /></el-tab-pane>
  <el-tab-pane label="管界配置" name="four"><workManagementDetail /></el-tab-pane>
</el-tabs>

解决方案 1:

使用v-if="activeName==='first'"解决闪屏

html 复制代码
<el-tabs type="card" v-model="activeName">
  <el-tab-pane label="线路配置" name="first"><lineDetail v-if="activeName==='first'"/></el-tab-pane>
  <el-tab-pane label="车站配置" name="second"> <stationDetail v-if="activeName==='second'"/></el-tab-pane>
  <el-tab-pane label="特殊路段配置" name="three"><specialRoadDetail v-if="activeName==='three'"/></el-tab-pane>
  <el-tab-pane label="管界配置" name="four"><workManagementDetail v-if="activeName==='four'"/></el-tab-pane>
</el-tabs>

解决方案 2:

内容闪动的原因是由于组件的状态被重置或者之前的状态没有及时清除,导致在组件重新渲染时,出现了短暂的内容闪烁。

例如,当 el-tabs 组件切换到一个新的标签页时,原来标签页中的内容可能还没有完全被销毁,新标签页的内容也还没有完全渲染出来,这就会导致一个短暂的内容闪烁。

为了避免这个问题,可以采用一些方法来优化组件的渲染,以减少组件重复使用时的闪动问题。例如,可以在组件中使用 key 属性来标识组件实例的唯一性,从而在组件状态发生变化时,强制 Vue.js 重新渲染组件。另外,也可以使用 CSS3 的动画效果来控制组件的渐变过渡,以减少闪动的影响。

相关推荐
Lvan的前端笔记8 小时前
docker:每个前端项目一个 Nginx 容器还是只有一个Nginx容器
前端·nginx·docker
三天不学习8 小时前
Egg.js 4 突然爆火,原因是否归结于AI 原生落地需求爆发?
前端·javascript·全栈·egg.js
xcs194059 小时前
前端 vue 的前端页面debugger 进不去
前端·javascript·vue.js
明月_清风10 小时前
Deno 终局来了:从挑战 Node 到被 Cloudflare 收编
前端·后端·node.js
Csvn11 小时前
框架性能优化
前端
回眸&啤酒鸭13 小时前
【回眸】OpenSwarm 多智能体协作系统实战指南
大数据·前端·人工智能
用户693717500138413 小时前
2026,程序员的时代拐点到了
android·前端·后端
大龄秃头程序员13 小时前
一次 iBeacon + BLE 无感解锁方案的实现记录
前端
小兔子13 小时前
Python 的 GIL 与 free-threading:3.13 之后「去 GIL」走到哪一步了
前端
IT_陈寒13 小时前
SpringBoot自动配置差点让我加班到凌晨
前端·人工智能·后端