AG Grid valueGetter + Pagination
AG Grid valueGetter + Pagination
我正在使用 ag grid (angular2) 进行渲染 table 并使用 valueGetter 功能将行数据渲染到 ui。
我想为我的 ui 添加滚动分页,但找不到使用数据源的方法。
`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)
})
}
这很简单,可以使用相同的实现来实现:
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);
我正在使用 ag grid (angular2) 进行渲染 table 并使用 valueGetter 功能将行数据渲染到 ui。
我想为我的 ui 添加滚动分页,但找不到使用数据源的方法。
`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)
})
}
这很简单,可以使用相同的实现来实现:
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);