当使用的行模型为“无限”并且设置了数据源时,是否可以更改块大小?
即调用数据源的getRows()
时,是否可以设置startRow
和/或endRow
?默认行为是一次获取100行,这对我来说是空白行,因为每次无限滚动时,我每次只有大约12个新数据行进入。因此,当getRows()
被触发时,当最初只有45个数据点时,它将尝试获取100到200行(例如)。作为补偿,它添加了一堆空白行。
我尝试了以下两个其他网格选项,但均未成功:
cacheOverflowSize: 2
infiniteInitialRowCount: 32
一次获取100行而不是12行就解决了这个问题,但是我宁愿不这样做(由于我正在研究的产品的某些设计约束)。
答案 0 :(得分:0)
高喊@ kamil-kubicki提出评论。 cacheBlockSize
确实是我想要的。但是,它并不能解决我的全部问题,因此,我将在下面概述完整的解决方案。
我将ag-grid的行高设置为默认的25px
最大值。这意味着在加载时,当填充初始数据时,它接近呈现32个项目的整个初始数据集。在滚动时,getRows()
然后将在总数据收集范围之外查找行,因此添加了空白行。
我将每次滚动加载的数据结果数更改为50。这是相对较大的,但是它可以正常工作并且目前表现良好,所以我想保留它。
对于有类似问题的人:
在cacheBlockSize
中使用gridOptions
请确保您的ag-grid不会渲染接近完整初始数据集合的任何内容(例如,如果您的集合是32个项目,请不要渲染超过16个项目的任何东西-通过更改高度来控制它的行数和网格的大小)
在滚动到更大数量时,更改将多少数据项加载到您的集合中;可以比用户滚动更快地填充数据的东西。对我来说是50。对你来说,可能更多或更少。