【发布时间】:2020-09-03 08:25:22
【问题描述】:
当我点击表格时,项目仅显示在表格上。
第一次加载页面时,表格是空的。我不知道为什么。
我从 Rest-API Cloud Blobstorage 检索数据,然后填充空数组。
代码如下:
import { MatPaginator } from '@angular/material/paginator';
import { MatSort } from '@angular/material/sort';
import { MatTableDataSource } from '@angular/material/table';
这里我导出接口PeriodicElement
//name of table column
export interface PeriodicElement {
timestamp: string; //need to be declared as string, angular table module requires it
key: string;
value: number;
}
导出类 TableComponent 实现 OnInit {
displayedColumns: string[] = ['timestamp', 'key', 'value'];
ELEMENT_DATA: PeriodicElement[] = new Array<PeriodicElement>();
dataSource = new MatTableDataSource<PeriodicElement>(this.ELEMENT_DATA);
data_array: Array<JsonSchema> = [];
@ViewChild(MatSort, { static: true }) sort: MatSort; //sort data
@ViewChild(MatPaginator, { static: true }) paginator: MatPaginator; //for displaying data in the tables
constructor( privat DataStreamService: DataStreamService) {}
ngOnInit(): void {
this.dataSource.paginator = this.paginator;
this.dataSource.sort = this.sort;
this.DataStreamService.getContents().then(results => {
this.data = results
......
....
....cut code ....
this.ELEMENT_DATA.push(...tabledata)
}
在浏览器视图中,当表格被渲染时。 当我点击每页数据加载的项目时,它会显示一个空表。
也许你们知道如何解决它。 我花了几天时间并没有发现问题。非常感谢提前
【问题讨论】:
标签: javascript arrays angular angular-material