您好,登錄后才能下訂單哦!
要在Angular中實現表格排序、過濾和分頁功能,可以使用Angular Material庫中的 MatTable組件。以下是簡單的步驟:
import { MatTableModule } from '@angular/material/table';
import { MatPaginatorModule } from '@angular/material/paginator';
import { MatSortModule } from '@angular/material/sort';
<table mat-table [dataSource]="dataSource" matSort matSortActive="columnName" matSortDirection="asc">
<!-- 表頭 -->
<ng-container matColumnDef="columnName">
<th mat-header-cell *matHeaderCellDef mat-sort-header> Column Name </th>
<td mat-cell *matCellDef="let element"> {{element.columnName}} </td>
</ng-container>
<!-- 表內容 -->
<tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
<tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
</table>
<mat-paginator [pageSizeOptions]="[5, 10, 20]" showFirstLastButtons></mat-paginator>
import { Component, ViewChild, AfterViewInit } from '@angular/core';
import { MatTableDataSource } from '@angular/material/table';
import { MatSort } from '@angular/material/sort';
import { MatPaginator } from '@angular/material/paginator';
@Component({
selector: 'app-table',
templateUrl: './table.component.html',
styleUrls: ['./table.component.css']
})
export class TableComponent implements AfterViewInit {
displayedColumns: string[] = ['columnName1', 'columnName2', 'columnName3'];
dataSource = new MatTableDataSource();
@ViewChild(MatSort) sort: MatSort;
@ViewChild(MatPaginator) paginator: MatPaginator;
constructor() {
this.dataSource.data = [{columnName1: 'Value1', columnName2: 'Value2', columnName3: 'Value3'}, ...];
}
ngAfterViewInit() {
this.dataSource.sort = this.sort;
this.dataSource.paginator = this.paginator;
}
}
.mat-header-cell.mat-sort-header {
cursor: pointer;
}
通過以上步驟,您可以在Angular應用中實現表格排序、過濾和分頁功能。您可以根據自己的需求自定義表格的數據源、顯示列和樣式。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。