-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
精读《高性能表格》 #309
Comments
文章很赞👏,有两个疑问
|
文章很赞,我也刚用 DOM 实现了一个高性能的表格。 可以实现表头固定和左右列固定 性能是同数据量 ElementUI 表格的3-5倍。且大数据量渲染之后,拖拽滚动无卡顿,无延迟。 实践总结了一下就是要想高性能,尽量少的使用事件监听。 为了提升性能使用了一些黑科技,刚加了学长微信,可以给黄大神提供一些不成熟的思路哈。 |
@shijiatongxue 无 demo,内部产品不方便放出来,但效果是验证过的。 |
我正在实现一个高性能的表格. 总结一下几点.
期间遇到的问题
|
关于表格的滚动条同步问题,大致和以下有关
参照地址
效果如下 |
好奇单元格宽高要如何计算,尤其是非文字,自定义渲染内容的情况下。 |
每个单元格固定宽高,一般在配置的时候设置好宽高的,如果调整为动态模式,就等图片之类资源加载完后动态调整单元格宽高,并把滚动条调整一下,让整个表格看上去没有跳动。 |
请教一下作者和各位大佬,文中说的 “快速滚动时惊喜的发现不会白屏了,原因是用 js 控制触发的滚动发生在渲染完成之后,所以浏览器会在滚动发生前现完成渲染,这相当有趣。” 是怎么做到的呀? |
@zenglinan 效果是这样,但实现没那么复杂。用 js 控制滚动自然就能实现该效果。 也可以做一种类比,假设用 canvas 绘制表格,那么你可以在滚动函数里实现渲染,滚动多少位移,就渲染多少位移的像素,只要按需渲染优化做得好,滚动就不会卡顿,然而渲染永远发生在滚动前,所以不可能出现白屏。 |
@zhengao261 hello 你好 我在尝试实现这个table 遇到一些问题 想问一下是否可与你参考一下你的代码 |
笔者结合自身项目经历,总结做高性能表格的方法,实现以下效果:
精读《高性能表格》
The text was updated successfully, but these errors were encountered: