user12077267
user12077267

Reputation: 41

How to reset the paginator?

How to reset the paginator and go to the first page? this.page = 1 does not work correctly. Just in case, I'll explain that I do not use MatPaginator.

ts:

  pageSizeOptions = [5, 10, 25, 50, 100];
  pageSize = 5;
  page = 1;

   applyFilter() {
    let searchFilter: any = {
      filterValue: this.search
    };
    this.categories.filter = searchFilter;
    if (this.page !== 1) {
      this.page = 1;
    } else {
      this.load();
    }
  }

  onPaginateChange(event) {
    this.page = event.pageIndex + 1;
    this.pageSize = event.pageSize;
    this.load();
  }

html:

<mat-paginator [pageSizeOptions]="pageSizeOptions" [length]="totalItems" [pageSize]="pageSize"
      (page)="onPaginateChange($event)" showFirstLastButtons [disabled]="!isActive">
</mat-paginator>

Upvotes: 3

Views: 5573

Answers (2)

Learner
Learner

Reputation: 1

I am using primeng. Please see below syntax to reset:

import { Paginator } from 'primeng/primeng';

@ViewChild('paginator') paginator: Paginator;


this.paginator.changePage(0);

Upvotes: -1

Mustahsan
Mustahsan

Reputation: 3862

You need to set pageIndex of paginator, but you will have to use ViewChild decorator to select that paginator, so in your component:

@ViewChild(MatPaginator, {static:false}) paginator: MatPaginator;
...

and in your method:

this.paginator.pageIndex = 0;

Upvotes: 3

Related Questions