dataSource 不显示 mat-cell 中的属性值
dataSource does not display the properties value in mat-cell
我想向数据显示数据表单服务 Table.I 可以在控制台中查看 USER_DATA 中的元素,但不能在 html 中查看。
https://imgur.com/TPO1NBL
这是我的组件代码:
export class DashboardComponent {
displayedColumns = ['name', 'email', 'phone', 'company'];
dataSource: MatTableDataSource<User[]>;
constructor(private userService: CustomService) {
const USER_DATA: Array<User[]> = [];
this.userService.getUser().subscribe((user) => {
this.USER_DATA = user;
});
this.dataSource = new MatTableDataSource(USER_DATA);
}
数据table代码:
<mat-table [dataSource]="dataSource">
<ng-container matColumnDef="name">
<mat-header-cell *matHeaderCellDef mat-sort-header> Name </mat-header-cell>
<mat-cell *matCellDef="let user"> {{user.name}} </mat-cell>
</ng-container>
<!-- Progress Column -->
<ng-container matColumnDef="email">
<mat-header-cell *matHeaderCellDef mat-sort-header>Email</mat-header-cell>
<mat-cell *matCellDef="let user"> {{user.email}}</mat-cell>
</ng-container>
<ng-container matColumnDef="phone">
<mat-header-cell *matHeaderCellDef mat-sort-header>Phone</mat-
header-cell>
<mat-cell *matCellDef="let user"> {{user.phone}}</mat-cell>
</ng-container>
<ng-container matColumnDef="company">
<mat-header-cell *matHeaderCellDef mat-sort-header>Company</mat-
header-cell>
<mat-cell *matCellDef="let user"> {{user.company.name}}</mat-cell>
</ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
<mat-row *matRowDef="let row; columns: displayedColumns;">
</mat-row>
</mat-table>
假设 users
是 User[]
试试这个
export class DashboardComponent {
displayedColumns = ['name', 'email', 'phone', 'company'];
dataSource=new MatTableDataSource<User>();
constructor(private userService: CustomService) {
this.userService.getUser().subscribe(users => this.dataSource.data=users);
}
}
我想向数据显示数据表单服务 Table.I 可以在控制台中查看 USER_DATA 中的元素,但不能在 html 中查看。
https://imgur.com/TPO1NBL 这是我的组件代码:
export class DashboardComponent {
displayedColumns = ['name', 'email', 'phone', 'company'];
dataSource: MatTableDataSource<User[]>;
constructor(private userService: CustomService) {
const USER_DATA: Array<User[]> = [];
this.userService.getUser().subscribe((user) => {
this.USER_DATA = user;
});
this.dataSource = new MatTableDataSource(USER_DATA);
}
数据table代码:
<mat-table [dataSource]="dataSource">
<ng-container matColumnDef="name">
<mat-header-cell *matHeaderCellDef mat-sort-header> Name </mat-header-cell>
<mat-cell *matCellDef="let user"> {{user.name}} </mat-cell>
</ng-container>
<!-- Progress Column -->
<ng-container matColumnDef="email">
<mat-header-cell *matHeaderCellDef mat-sort-header>Email</mat-header-cell>
<mat-cell *matCellDef="let user"> {{user.email}}</mat-cell>
</ng-container>
<ng-container matColumnDef="phone">
<mat-header-cell *matHeaderCellDef mat-sort-header>Phone</mat-
header-cell>
<mat-cell *matCellDef="let user"> {{user.phone}}</mat-cell>
</ng-container>
<ng-container matColumnDef="company">
<mat-header-cell *matHeaderCellDef mat-sort-header>Company</mat-
header-cell>
<mat-cell *matCellDef="let user"> {{user.company.name}}</mat-cell>
</ng-container>
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
<mat-row *matRowDef="let row; columns: displayedColumns;">
</mat-row>
</mat-table>
假设 users
是 User[]
试试这个
export class DashboardComponent {
displayedColumns = ['name', 'email', 'phone', 'company'];
dataSource=new MatTableDataSource<User>();
constructor(private userService: CustomService) {
this.userService.getUser().subscribe(users => this.dataSource.data=users);
}
}