angular-ui/ui-grid

paginationApi.getLastRowIndex and grid.options.totalItems wrong when filtered and data externally changed

Open

#6,897 opened on Nov 27, 2018

View on GitHub
 (0 comments) (0 reactions) (0 assignees)JavaScript (2,496 forks)batch import
help wanted

Repository metrics

Stars
 (5,395 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

I am using paginationApi.getLastRowIndex() and grid.options.totalItems inside a custom pagination template, done via $templateCache.put('ui-grid/pagination',.

That works in general. However, the results are wrong if two conditions happen:

  • A column filter is active
  • While the column filter is active, the data is externally changed, rendering the filter condition false for at least one row.

The actual result displayed is, in this case, the "maximum" (unfiltered) number of items - as if the filter was not there.

I have created a Plunker: http://next.plnkr.co/edit/i32TV4PrYIJby8Uy?preview

Steps for reproducing error there:

  • Filter for City: "Tokio"

  • Click on "Transfer Maria from Tokio to Paris"

  • Pagination footer wrong

Contributor guide