在滚动时动态渲染网格行

使用虚拟滚动和无限滚动,在动态渲染可见内容的同时提升 JavaScript 应用中数据网格的性能。

2025年6月30日功能亮点网格控件
在滚动时动态渲染网格行

在滚动时将项目加载到数据网格中的能力是一种技术:根据用户的滚动位置对内容进行动态渲染或获取。它的目的在于在处理大型数据集时提升性能,并最终改善用户体验。这包括虚拟滚动(virtual scrolling),即网格只渲染当前在视口中可见的行,并在用户滚动时复用这些相同的 DOM 元素;以及无限滚动(infinite scrolling,亦称“无尽滚动”endless scrolling),即当到达当前已显示数据集的末尾时,从远程源加载更多数据。通过在任意时刻尽可能减少需要渲染或获取的数据量,这种方式可显著缩短初始加载时间、提升响应速度,并使应用能够高效扩展。

一些 JavaScript 网格组件允许你在用户滚动时加载项目,包括:

  • DevExtreme HTML5 JavaScript Data Grid(DevExpress 旗下的 DevExtreme)支持虚拟滚动和无限滚动,以优化数据加载性能。
  • KendoReact Data Grid(Telerik 旗下的 KendoReact)提供可定制的列/行虚拟化以及虚拟滚动,会在需要时动态请求数据。
  • Sencha Ext JS Grid(Sencha Ext JS)通过虚拟化系统实现无限滚动:按需加载数据,无需传统分页。
  • Syncfusion DataGrid for JavaScript(Syncfusion Essential Studio Enterprise)同时支持虚拟化和无限滚动,从而实现更具响应性的网格渲染。

如需深入了解功能和价格,请查看我们对 JavaScript 网格组件的对比。

对比 JavaScript 网格组件