el-table出现表格border错位的解决方法

在使用el-table组件时 ,经常遇见页面效果错乱的情况,如下图。

该问题情况是在table切换不同数据时或者切换页面时,容易出现:

那么 解决办法是啥呢

先看官方有提供方法:

那么 我们可以在需要重新渲染数据时执行:

cpp 复制代码
this.$nextTick(() => {
   this.$refs.table.doLayout()
});

或者在生命周期updated里执行doLayout方法:

(该方法类似于监听table数据的变化,只要数据发生变化 就会执行)

cpp 复制代码
updated() {
    // table是表格的ref属性值
    if (this.$refs.table && this.$refs.table.doLayout) {
      this.$refs.table.doLayout();
    }
}

我看网上有提供另一个方法,在第一个el-table-column中加上:key="Math.random()",大家也可以试下:

cpp 复制代码
<el-table :data="tableData" border>
    <el-table-column :key="Math.random()" prop="id" label="id"> </el-table-column>
    <el-table-column prop="name" label="姓名"> </el-table-column>
    <el-table-column prop="age" label="年龄"></el-table-column>
</el-table>
相关推荐
纳尼亚awsl28 分钟前
无限滚动组件封装(vue+vant)
前端·javascript·vue.js
cc蒲公英1 小时前
vue2中使用vue-office库预览pdf /docx/excel文件
前端·vue.js
小兔崽子去哪了1 小时前
Element plus 图片手动上传与回显
前端·javascript·vue.js
A阳俊yi2 小时前
Vue(13)——router-link
前端·javascript·vue.js
4triumph2 小时前
Vue.js教程笔记
前端·vue.js
程序员大金2 小时前
基于SSM+Vue+MySQL的酒店管理系统
前端·vue.js·后端·mysql·spring·tomcat·mybatis
清灵xmf2 小时前
提前解锁 Vue 3.5 的新特性
前端·javascript·vue.js·vue3.5
程序员大金3 小时前
基于SpringBoot的旅游管理系统
java·vue.js·spring boot·后端·mysql·spring·旅游
二川bro3 小时前
Vue 修饰符 | 指令 区别
前端·vue.js
程序员大金4 小时前
基于SpringBoot+Vue+MySQL的养老院管理系统
java·vue.js·spring boot·vscode·后端·mysql·vim