获取列的当前排序状态,可以通过以下方法:
在 onSortChanged 事件处理函数中使用 setTimeout() 以确保代码在排序完成后运行。
使用 column API 中的 sortedAt 属性,它可以告诉您该列最后一次排序的时间戳。您可以在事件处理程序中跟踪此时间戳,并在需要时更新它。
下面是一个示例代码:
// 在 gridOptions 上设置 onSortChanged 事件处理函数 onSortChanged: function(event) { // 使用 setTimeout() 确保代码在排序完成后运行 setTimeout(function(){ // 获取当前排序列 var sortedColumn = event.columnApi.getAllColumns().find(function(column) { return column.getSort() !== null; }); if (sortedColumn) { // 获取当前排序列的排序索引 var sortIndex = sortedColumn.getSortIndex(); console.log("Sorted Column: " + sortedColumn.getId() + ", Sort Index: " + sortIndex); } else { console.log("No Sorting"); } }, 0); }
上述代码将在排序完成后获取当前排序列的排序索引,并将其打印到控制台上。您可以根据自己的要求修改代码,并将其应用到自己的项目中。