Използвам 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
тогава?
Някакви идеи? Благодаря предварително :)