Подтвердить что ты не робот

Как получить отфильтрованные строки в ui-grid?

Использование ui-grid Я хочу получить список всех фильтрованных строк данных с помощью фильтра.

В плункере ниже у меня есть исходные данные из 500 элементов, отфильтрованных до 61. Теперь, как я могу получить список из этих 61 объектов?

ссылка plnkr

Если я использую следующий код, я получаю только строки, отображаемые на экране

var _renderedRows = $scope.gridApi.grid.renderContainers.body.renderedRows;

Нажатие кнопки внизу этого плунжера показывает количество фильтрованных строк, которое составляет только 14, а не 61. Это работает отлично, если в моем фильтре 14 или меньше, так как я могу получить доступ к объекту entity из приведенного выше. Но я не вижу никакого свойства в сетке, которое предоставляет отфильтрованные строки.

Итак, как я могу получить список 61, чтобы я мог передать их в другую функцию для выполнения действий над ними?

4b9b3361

Ответ 1

Используйте PublicApi, чтобы получить текущий счетчик видимых строк

$scope.filteredRows = $scope.gridApi.core.getVisibleRows($scope.gridApi.grid);

Ниже приведен обновленный plnkr (Подсказка: вы должны нажать кнопку "Получить отфильтрованные строки" )

Ответ 2

Это ответ на аналогичный вопрос. Он подтверждает не только видимые строки, но строки, которые фактически фильтруются:

fooobar.com/info/552304/...