更改 Ag-Grid 无限滚动块大小?
Change Ag-Grid infinite scroll block size?
当使用的行模型是 "infinite" 并且设置了数据源时,有没有办法更改块大小?
即当调用数据源的getRows()
时,有没有办法设置startRow
and/orendRow
?默认行为是一次获取 100 行,这对我来说是空白行,因为我一次只有大约 12 行新数据行进入无限滚动。因此,当 getRows()
被触发时,它会尝试获取第 100 到 200 行(作为示例),当时只有 45 个数据点。为了补偿它添加了一堆空白行。
我已经尝试了以下两个额外的网格选项但没有成功:
cacheOverflowSize: 2
infiniteInitialRowCount: 32
一次获取 100 行而不是 12 行解决了这个问题,但我真的宁愿不这样做(由于我正在开发的产品的一些设计限制)。
感谢@kamil-kubicki 发表评论。 cacheBlockSize
确实是我要找的。虽然它并没有解决我的全部问题,所以我将在下面概述我的完整解决方案。
我将 ag-grid 的行高设置为默认的 25px
最大值。这意味着在加载时,当它填充初始数据时,它接近于呈现我的整个初始数据集 32 项。在滚动时,getRows()
将查找总数据集合范围之外的行,因此它添加了空白行。
我将每次滚动加载的数据结果数更改为 50。这相对较大,但目前可以正常工作并且性能良好,所以我想我会保留它。
有类似问题的朋友:
在gridOptions
中使用cacheBlockSize
确保你的 ag-grid 没有渲染任何接近你完整初始数据集合的东西(例如,如果你的集合是 32 个项目,不要渲染超过 16 个项目的任何东西 - 控制这个通过更改行高和网格大小)
将滚动时加载到您的集合中的数据项数量更改为更大的数量;可以比用户滚动更快地填充数据的东西。对我来说是 50。对你来说可能更多,也可能更少。
当使用的行模型是 "infinite" 并且设置了数据源时,有没有办法更改块大小?
即当调用数据源的getRows()
时,有没有办法设置startRow
and/orendRow
?默认行为是一次获取 100 行,这对我来说是空白行,因为我一次只有大约 12 行新数据行进入无限滚动。因此,当 getRows()
被触发时,它会尝试获取第 100 到 200 行(作为示例),当时只有 45 个数据点。为了补偿它添加了一堆空白行。
我已经尝试了以下两个额外的网格选项但没有成功:
cacheOverflowSize: 2
infiniteInitialRowCount: 32
一次获取 100 行而不是 12 行解决了这个问题,但我真的宁愿不这样做(由于我正在开发的产品的一些设计限制)。
感谢@kamil-kubicki 发表评论。 cacheBlockSize
确实是我要找的。虽然它并没有解决我的全部问题,所以我将在下面概述我的完整解决方案。
我将 ag-grid 的行高设置为默认的 25px
最大值。这意味着在加载时,当它填充初始数据时,它接近于呈现我的整个初始数据集 32 项。在滚动时,getRows()
将查找总数据集合范围之外的行,因此它添加了空白行。
我将每次滚动加载的数据结果数更改为 50。这相对较大,但目前可以正常工作并且性能良好,所以我想我会保留它。
有类似问题的朋友:
在
gridOptions
中使用确保你的 ag-grid 没有渲染任何接近你完整初始数据集合的东西(例如,如果你的集合是 32 个项目,不要渲染超过 16 个项目的任何东西 - 控制这个通过更改行高和网格大小)
将滚动时加载到您的集合中的数据项数量更改为更大的数量;可以比用户滚动更快地填充数据的东西。对我来说是 50。对你来说可能更多,也可能更少。
cacheBlockSize