vxe-grid 一次渲染大量数据同时进行 mergeCells 时会卡顿应该如何优化?

59 天前
 imherer

大概有 8k 到 1 万的数据量,直接渲染出来的速度还能接受,但是需要单元格合并,不是所有列都需要合并,只需要合并第一列的

测试了下 4k 条数据不到的时候,合并数据大概有 1k 条,就是 mergeCells 大概有 1k 条数据,渲染差不多要 4s 左右

在不分页的情况下各位前端大佬们有什么优化方案吗?

849 次点击
所在节点    程序员
4 条回复
UnluckyNinja
59 天前
不了解 vxe-grid ,单纯说一下优化要点,如果合并操作只是针对显示内容合并,那么只渲染可见内容能大幅降低开销,如果是某个算法本身就很耗时而你无法调整,那就挪到 worker 里,至少保证 dom 线程不阻塞
jy02534655
59 天前
如果只是第一列数据需要合并,那试试不使用单元格合并功能,在合并前先遍历数据标记哪些是相同数据,然后渲染后用 css 或者 js 处理下,在界面上看起来数据是合并的就行了,然后开虚拟滚动看看
imherer
59 天前
@UnluckyNinja 嗯,目前就是想到了这个方案还在尝试中
imherer
59 天前
@jy02534655 也是一种方案,我记得 element plus 的 v2table 就是这样做的好像

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://yangjunhui.monster/t/1124223

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX