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 に答える