2017-09-12 4 views
1

Je construis une datable avec ngx-datatable et pagination activée avec [limit] = "10" par exemple. Cela fonctionne bien. Cependant, je veux que les Entrées par page soient configurables via le Visiteur.ngx-datatable Paramètre de pagination configurable

J'ajouté une variable au contrôleur:

pageSize: number = 10; // defaults to 10

De plus, je crée un élément composant (est propre composante de la mine)

<form-item name="pageSize" [(value)]="pageSize" (change)="table.recalculate()"></form-item> 

<ngx-datatable 
    #table ... 

qui crée une

<input type="text" name="pageSize" [ngModel]="value"> 

Maintenant, cela ne fonctionne pas comme prévu. La valeur initiale est définie sur 10. Lorsque je le change, le rappel onchange a un retard mystérieux?!. Il ne réagit pas de la même manière à chaque fois. La table.recalculate() est déclenchée correctement, mais si je passe à la page suivante, les données supplémentaires sont ajoutées à la table au lieu de remplacer les données de la page précédente.

Quelqu'un peut-il m'aider, qu'est-ce qui me manque?

Répondre

0

Il devrait être ngModelChange au lieu de change

<form-item name="pageSize" [value]="pageSize" (ngModelChange)="table.recalculate()"></form-item> 
+0

Hey, merci pour la réponse, mais cela ne fonctionne pas. ngModelChange ne fait rien pour le moment. Je suppose que le problème est, que je passe la [(valeur)] comme liaison à double sens dans le et à l'intérieur de l'élément de formulaire, j'ai mis le ngModel avec . Seulement de cette façon, la liaison bidirectionnelle fonctionne. Je vais essayer de mettre l'entrée directement dans le composant de la table – Fl0R1D3R

+0

désolé une faute de frappe, il devrait être '[valeur]' –

+0

encore, rien ne se passe. – Fl0R1D3R