当前存在一个未解决的问题,将服务器端排序/过滤添加到 angular-grid 项目。有没有人找到一种解决方法来使用当前的网格实现来实现这个功能?哈克与否,我仍然会接受它。
2 回答
您可以在这里获得更多信息:
http://www.ag-grid.com/angular-grid-virtual-paging/
任何列都可以通过单击标题进行排序。发生这种情况时,将使用新的排序选项再次调用数据源。
可以过滤年龄、国家和年份列。发生这种情况时,将使用新的过滤选项再次调用数据源。
$scope.gridOptions = {
enableServerSideSorting: true,
enableServerSideFilter: true
}
...
$scope.gridOptions.api.setDatasource(dataSource);
数据源有一个 getRows(),它可以使用 params.startRow 和 params.endRow,加上 params.sortModel、params.filterModel 通过 http 调用从服务器请求数据。
文档在这里: https: //www.ag-grid.com/javascript-grid-infinite-scrolling/ Rowmodeltype 必须设置为无限,而不是 setRowData ,dataSource pramater 必须设置。
rowModelType : "infinite",
enableServerSideSorting: true,
enableServerSideFilter: true
内置过滤器如 agSetColumnFilter、agTextColumnFilter、agNumberColumnFilter 仅适用于 ag grid 15.0.0 和 16.0.0 版本,不适用于 14.2.0 版本。
这是它的 plunkr: https ://embed.plnkr.co/S2yZkGKF7utD1KEt1pbh/