1

hy, je paginator:pourquoi l'index de page de paginator ne change pas après avoir changé dans le code?

    <md-paginator [length]="length" 
            [pageSize]="pageSize" 
            [pageSizeOptions]="pageSizeOptions" 
            (page)="pageEvent = $event"> 
        </md-paginator> 

Paginator fonctionne uniquement à l'aide des boutons de l'interface utilisateur, mais je ne peux pas changer l'index de la page sans recharger la page dans le code. Rien des ouvrages suivants (mdPaginator est dans le constructeur):

this.pageIndex = 0; 
this.mdPaginator.pageIndex = 0; 
this.mdPaginator.previousPage(); 

Soit dit en passant, j'utilise paginator dans le cycle *ngFor, pas à la table.

Répondre

1

Vous n'utilisez pas la dernière version de Material 2.

Si vous êtes sur une version inférieure à 2.0.0-beta.10, il s'agit d'un bug. Alors mettez à jour au moins celui-là.

Ensuite, cela devrait fonctionner:

import { Component, ViewChild } from '@angular/core'; 
import { MdPaginator } from '@angular/material'; 

@Component({ 
    selector: 'my-component', 
}) 
export class MyComponent { 
    @ViewChild('paginator1') paginator1: MdPaginator; 

    myFunction() { 
    this.paginator1.pageIndex = 0; 
    } 

} 
<md-paginator #paginator1 
    [length]="100" 
    [pageSize]="10" 
    [pageSizeOptions]="[5, 10, 25, 100]"> 
</md-paginator> 

<button md-button (click)="myFunction()">Paginate</button> 

Dans la dernière version Material remplacer MdPaginator avec MatPaginator et tous les fichiers HTML md- avec mat-