如何在Ag-Grid中实现反向显示行序号?
Ag-Grid 反向行序号 ValueGetter 实现方案
完全可以通过配置valueGetter实现该效果,无需自定义cell renderer,仅需要修改valueGetter的计算逻辑即可:
修改后的列配置代码如下:
<AgGridColumn headerName={'Nr'} field="i" width={50} lockPosition={true} valueGetter='api.getModel().getRowCount() - node.rowIndex' />
实现逻辑说明:
api.getModel().getRowCount()会实时返回当前表格渲染的总行数(开启过滤、排序、分页场景下,也会自动适配当前可见范围的行数),node.rowIndex是当前行从0开始的正序索引,用总行数减去该索引刚好得到反向序号:顶部第一行(rowIndex=0)得到的值等于总行数,底部最后一行得到的值为1,完全匹配你的需求。
额外注意事项:
- 如果需要分页场景下展示全局连续的反向序号,可以额外叠加分页偏移量计算即可,示例:
(当前页起始序号偏移量) + (api.getModel().getRowCount() - node.rowIndex),根据你的分页参数调整对应偏移量即可。 - 该实现会自动适配表格的排序、过滤操作,操作后序号会自动重新计算反向值,无需额外绑定事件监听。
内容的提问来源于stack exchange,提问作者Vlad
相关产品推荐
相关产品推荐

