#angular #angular-material
Вопрос:
<input class="form-control input" matInput (keyup)="applyFilter($event)" placeholder="Rechercher" #input>
<div class="mat-elevation-z8">
<table mat-table [dataSource]="dataSource" matSort>
<ng-container matColumnDef="idArticle">
<th mat-header-cell *matHeaderCellDef mat-sort-header> Id article </th>
<td mat-cell *matCellDef="let row"> {{row.idArticle}} </td>
</ng-container>
<ng-container matColumnDef="nomAR">
<th mat-header-cell *matHeaderCellDef mat-sort-header> Nom article </th>
<td mat-cell *matCellDef="let row"> {{row.nomAR}} </td>
</ng-container>
<ng-container matColumnDef="lot">
<th mat-header-cell *matHeaderCellDef mat-sort-header> Lot </th>
<td mat-cell *matCellDef="let row"> {{row.lot}} </td>
</ng-container>
<ng-container matColumnDef="boutton">
<th mat-header-cell *matHeaderCellDef mat-sort-header> </th>
<td mat-cell *matCellDef="let row" style="display: flex">
<button (click)="deleteArticle(row.id)" class="btn btn-danger">Delete</button>
<button (click)="updateArticle(row.id)" class="btn btn-info" style="margin-left: 10px">Update</button>
</td>
</ng-container>
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
<!-- Row shown when there is no matching data. -->
<tr class="mat-row" *matNoDataRow>
<td class="mat-cell" colspan="4">Aucune donnée correspond à "{{input.value}}"</td>
</tr>
</table>
<mat-paginator [pageSizeOptions]="[5, 10, 25, 100]"></mat-paginator>
</div>
Ответ №1:
Убедитесь, что вы импортировали следующее:
import { MatPaginator } from '@angular/material/paginator';
А затем в процессе export class
сделайте следующее:
@ViewChild(MatPaginator) paginator: MatPaginator;
ngOnInit(): void {
...
this.loadData(...);
...
}
loadData(...) {
...
this.dataSource.paginator = this.paginator;
...
}