Skip to content

动态表格列

一些 bug 现象

  • 动态表格列实现时,表格列会剧烈抖动,晃动,闪动。
  • 固定列宽度计算不合理,导致固定列宽度计算不合适。

el-table 组件重新渲染

表格组件本身提供的doLayout方法可以有效地根据表格列数组变更实现宽度重新计算。点此了解别人的解决方案。

el-table-column 组件的 v-if 与 key

可以继续使用v-if来控制显示与隐藏。但是key值的设计一定要保证内容可以更新。:key="Math.random()"的写法是比较合适的。点此了解综合性的解决方案

综合理解

要用doLayout方法实现表格样式布局的重新渲染,用此方法重新计算表格列宽。用合理的key值设计保证el-table-column组件可以及时地重新渲染更新。

思路总结

不需要考虑用样式的方案实现表格列的隐藏和显示。 数组的引用指向改动与表格剧烈抖动无关。

贡献者

The avatar of contributor named as ruan-cat ruan-cat
The avatar of contributor named as 阮喵喵 阮喵喵
The avatar of contributor named as 阮中楠 阮中楠
The avatar of contributor named as ruan-cat.台式机 ruan-cat.台式机
The avatar of contributor named as 阮中楠-台式电脑 阮中楠-台式电脑

页面历史