Ag grid Ag网格如何从第500次开始加载记录?

Ag grid Ag网格如何从第500次开始加载记录?,ag-grid,Ag Grid,我有一个Ag网格配置为在无限滚动中工作 在文档中,我找到了,它显示了如何跳转到第500条记录 但我正在寻找一种方法,开始直接将网格加载到第500个记录 可能有一个属性要在网格中设置 或者我应该在某些情况下输入以下代码: jumpTo500() { if (this.gridApi.getInfiniteRowCount() < 501) { this.gridApi.setInfiniteRowCount(501, false); } this.gridApi.ensu

我有一个Ag网格配置为在无限滚动中工作

在文档中,我找到了,它显示了如何跳转到第500条记录

但我正在寻找一种方法,开始直接将网格加载到第500个记录

可能有一个属性要在网格中设置

或者我应该在某些情况下输入以下代码:

jumpTo500() {
  if (this.gridApi.getInfiniteRowCount() < 501) {
    this.gridApi.setInfiniteRowCount(501, false);
  }
  this.gridApi.ensureIndexVisible(500);
}
jumpTo500(){
if(this.gridApi.getInfiniteRowCount()<501){
this.gridApi.setInfiniteRowCount(501,false);
}
这个.gridApi.ensureIndexVisible(500);
}

哪个?

您可以在
onGridReady
阶段使用
ensureIndexVisible

onGridReady(params) {
    this.gridApi = params.api;
    this.gridColumnApi = params.columnApi;
    this.gridApi.ensureIndexVisible(499);  <--- add this line 
更新:另一种可能的方式是通过
firstDataRendered

firstDataRendered
在第一次将数据渲染到网格中时激发

他们正在努力修复这个错误

这里提出的解决方案是迄今为止我找到的最好的解决办法

但它并不能永久解决性能缺陷

事实上,查看日志可以看到程序总是发出第一个不必要的请求,以查看前100条记录


只有这样,解决方案才需要从400到500的正确记录。不,它不起作用,因为在“onGridReady”事件中,数据还不存在,并且该属性仅适用于已经存在的数据。实际上,它返回这个错误:“ensureIndexVisible的行索引无效:499”刚刚添加
params.api.ensureIndexVisible(499)
数据源
之后,有一个名为firstDataRendered的新事件。第一次将数据渲染到网格时激发。我建议试试这个而不是firstDataRendered解决方案,但仍然不适合我。我们在ag grid v20上,所以可能需要升级。我刚刚在github中添加了更多信息:我可以看到这两个地方都在跟踪。请注意,我们不会认为这是一个bug,但是一个特性请求:无论如何,在StAcExcel中突出显示的解决方案是一个体面的解决方案,直到你有这个特性请求允许你这样做。我希望这能澄清这一点……总之,@un.spike提到的解决方案仍然是完全可以接受的解决方案。我编辑了该解决方案,以便更好地解释性能上的缺陷
infiniteInitialRowCount = 1000 - initial config

this.gridApi.ensureIndexVisible(999) - max 
(firstDataRendered)="firstDataRendered($event)"
...
firstDataRendered(){
    this.gridApi.ensureIndexVisible(499);
}