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 的动画效果来控制组件的渐变过渡,以减少闪动的影响。

相关推荐
xianxin_8 分钟前
CSS Dimension(尺寸)
前端
小宋搬砖第一名8 分钟前
前端包体积优化实战-从 352KB 到 7.45KB 的极致瘦身
前端
陈随易9 分钟前
前端之虎陈随易:2025年8月上旬总结分享
前端·后端·程序员
草巾冒小子13 分钟前
天地图应用篇:增加全屏、图层选择功能
前端
universe_0131 分钟前
day25|学习前端js
前端·笔记
Zuckjet36 分钟前
V8 引擎的性能魔法:JSON 序列化的 2 倍速度提升之路
前端·chrome·v8
MrSkye36 分钟前
🔥React 新手必看!useRef 竟然不能触发 onChange?原来是这个原因!
前端·react.js·面试
wayman_he_何大民43 分钟前
初识机器学习算法 - AUM时间序列分析
前端·人工智能
juejin_cn1 小时前
前端使用模糊搜索fuse.js和拼音搜索pinyin-match提升搜索体验
前端
....4921 小时前
Vue3 + Element Plus 实现可搜索、可折叠、可拖拽的部门树组件
前端·javascript·vue.js