0

我正在使用 ag grid (angular2) 来呈现表,并使用 valueGetter 功能将行数据呈现到 ui。

我想在我的 ui 中添加 onscroll 分页,但找不到使用数据源的方法。

`gridOptions.api.setDatasource(ds);` 

如何在这里协作 valueGetter 和 pagination?

valueGetter 代码

this.gridData  = {cols:["col1", "col2"], rows:[["data1","data2"],
["data3","data4"]]};
this.columnDefs = [];
this.rowData = this.gridData.rows;
for (var i in this.gridData.cols){
  var scopeOutCurrIndex = i => (params) => params.data[i]
  this.columnDefs.push({
    headerName: this.gridData.cols[i],
    valueGetter: scopeOutCurrIndex(i)
  })
}
4

1 回答 1

1

这很简单,可以使用相同的实现来实现这一点:

 var dataSource = {
        data: gData,
        rowCount: null,
        getRows: function (params) {
            console.log("asking for " + params.startRow + " to " + params.endRow);
            var rowsThisPage = this.data.slice(params.startRow, params.endRow);
            var lastRow = -1;
            if (this.data.length <= params.endRow) {
                lastRow = this.data.length;
            }
            params.successCallback(rowsThisPage, lastRow);
        }
    };

    this.gridApi.setDatasource(dataSource);
于 2018-01-30T11:25:01.270 回答