Я использую UI Grid для отображения некоторых данных. Один из столбцов является текстовым, поэтому у меня есть фильтрация «содержит», которая работает отлично.
Я также использую пагинацию. В правом углу UI-Grid показано что-то вроде:
1 - 23 of 23 items
В моей функциональности страницы (сторона углового контроллера) мне нужно вернуть общее количество элементов, в частности, последние «23» из этой строки. Я не мог найти ничего в документации, кроме этого (из документов):
GridOptions (API в модуле ui.grid.pagination)
totalItems Общее количество элементов, устанавливаемое автоматически при разбивке на страницы на стороне клиента, необходимо установить пользователем для разбивки на страницы на стороне сервера"
Поэтому я попытался использовать $scope.gridOptions.totalItems
, но, к сожалению, он всегда возвращает 0 при первой загрузке страницы.
Мой обходной путь заключался в использовании data.length, который дал бы мне то, что мне было нужно. Однако после дальнейшего тестирования я понял, что после использования фильтрации общее количество элементов в нижнем колонтитуле разбиения на страницы изменяется на сумму совпадающих результатов. Я не нашел другого способа получить этот номер.
Еще одна вещь: есть ли событие, которое срабатывает после завершения фильтрации, чтобы я мог проверить $scope.gridOptions.totalItems
тогда?
Любые идеи? Заранее спасибо :)