- 角度材质 7 教程
- Angular Material 7 - 主页
- Angular 材料 7 - 概述
- 环境设置
- 表单控件
- Angular Material 7 - 自动完成
- Angular 材质 7 - 复选框
- Angular Material 7 - 日期选择器
- Angular Material 7 - 表单字段
- 角度材质 7 - 输入
- Angular Material 7 - 单选按钮
- 角度材质 7 - 选择
- 角度材料 7 - 滑块
- Angular Material 7 - 切换滑块
- 导航
- Angular 材质 7 - 菜单
- Angular Material 7 - 侧面导航
- Angular Material 7 - 工具栏
- 布局
- 角度材料 7 - 卡片
- 角度材料 7 - 分隔线
- Angular Material 7 - 扩展面板
- Angular Material 7 - 网格列表
- Angular 材质 7 - 列表
- 角度材料 7 - 步进器
- Angular Material 7 - 选项卡
- 角度材质 7 - 树
- 按钮和指示灯
- 角度材质 7 - 按钮
- Angular Material 7 - 按钮切换
- Angular Material 7 - 徽章
- 角材料 7 - 芯片
- Angular Material 7 - 图标
- Angular Material 7 - 进度旋转器
- Angular Material 7 - 进度条
- 角度材质 7 - 波纹
- 弹出窗口和模态窗口
- Angular Material 7 - SnackBar
- Angular Material 7 - 工具提示
- 数据表
- Angular Material 7 - 分页器
- Angular Material 7 - 排序标题
- 角材料 7 - 表格
- Angular Material 7 资源
- Angular Material 7 - 快速指南
- Angular Material 7 - 资源
- Angular Material 7 - 讨论
角材料 7 - 表格
<mat-table>是一个 Angular 指令,用于创建具有材料设计和样式的表格。
在本章中,我们将展示使用 Angular Material 显示表格所需的配置。
以下是修改后的模块描述符app.module.ts的内容。
import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { AppComponent } from './app.component'; import {BrowserAnimationsModule} from '@angular/platform-browser/animations'; import {MatTableModule} from '@angular/material' import {FormsModule, ReactiveFormsModule} from '@angular/forms'; @NgModule({ declarations: [ AppComponent ], imports: [ BrowserModule, BrowserAnimationsModule, MatTableModule, FormsModule, ReactiveFormsModule ], providers: [], bootstrap: [AppComponent] }) export class AppModule { }
以下是修改后的 HTML 主机文件app.component.html的内容。
<table mat-table [dataSource] = "dataSource" class = "mat-elevation-z8"> <ng-container matColumnDef = "name"> <th mat-header-cell *matHeaderCellDef> Dessert (100g)</th> <td mat-cell *matCellDef = "let element"> {{element.name}} </td> </ng-container> <ng-container matColumnDef = "calories"> <th mat-header-cell *matHeaderCellDef>Calories</th> <td mat-cell *matCellDef = "let element"> {{element.calories}} </td> </ng-container> <ng-container matColumnDef = "fat"> <th mat-header-cell *matHeaderCellDef>Fat (g)</th> <td mat-cell *matCellDef = "let element"> {{element.fat}} </td> </ng-container> <ng-container matColumnDef = "carbs"> <th mat-header-cell *matHeaderCellDef>Carbs (g)</th> <td mat-cell *matCellDef = "let element"> {{element.carbs}} </td> </ng-container> <ng-container matColumnDef = "protein"> <th mat-header-cell *matHeaderCellDef>Protein (g)</th> <td mat-cell *matCellDef = "let element"> {{element.protein}} </td> </ng-container> <tr mat-header-row *matHeaderRowDef = "displayedColumns"></tr> <tr mat-row *matRowDef = "let row; columns: displayedColumns;"></tr> </table>
以下是修改后的 ts 文件app.component.css的内容。
table { width: 100%; }
以下是修改后的 ts 文件app.component.ts的内容。
import {Component, Injectable} from '@angular/core'; import {Sort} from '@angular/material'; export interface Food { calories: number; carbs: number; fat: number; name: string; protein: number; } @Component({ selector: 'app-root', templateUrl: 'app.component.html', styleUrls: ['app.component.css'] }) export class AppComponent { dataSource: Food[] = [ {name: 'Yogurt', calories: 159, fat: 6, carbs: 24, protein: 4}, {name: 'Sandwich', calories: 237, fat: 9, carbs: 37, protein: 4}, {name: 'Eclairs', calories: 262, fat: 16, carbs: 24, protein: 6}, {name: 'Cupcakes', calories: 305, fat: 4, carbs: 67, protein: 4}, {name: 'Gingerbreads', calories: 356, fat: 16, carbs: 49, protein: 4}, ]; displayedColumns: string[] = ['name', 'calories', 'fat', 'carbs','protein']; }
结果
验证结果。
细节
- 在这里,我们创建了一个表。添加了 mat-Table 并使用 mat-row 和 mat-header-row 处理 tr 和 th。