1

我正在使用最新版本的Angular UI Grid,并且正在努力确定焦点当前是否位于网格的最后显示行上。

数据数组未按屏幕上的方式排序,因此我无法使用该信息。我读到可见行缓存应该在屏幕上进行排序,但我认为这可能与旧的 ng-grid 有关。无论如何,如果我看gridApi.core.getVisibleRows(myGrid)它仍然可以根据原始数据进行排序。

我目前正在处理该事件gridApi.cellNav.on.navigate(newRowCol, oldRowCol)。我可以看到用户关注的列和行,但我看不到此事件(或其他地方)中的任何值,我可以使用这些值来确定该行是否是最后显示在屏幕上的。我会很感激任何提示!

4

1 回答 1

1

您应该使用 gridApi.grid.renderContainers.body.visibleRowCache 这是一个按行在屏幕上可见的方式排序的数组。然后,您可以检查该行是否是最后一行,例如:

oldRowCol.row.uid == $scope.gridApi.grid.renderContainers.body.visibleRowCache[$scope.gridApi.grid.renderContainers.body.visibleRowCache.length-1].uid
于 2014-11-14T00:44:03.087 回答