MatTableDataSource不包含Angular 6数据

时间:2018-05-31 14:54:16

标签: angular typescript angular-material2

我正在尝试使用MatTableDataSource来确保我可以使用MAterial Data-Table.的所有功能。不幸的是,它似乎不起作用。

我从API检索数据,将其放入一个对象(它被填充)然后创建一个新的MatTableDataSource,但它不会在页面上显示任何数据。如果我将html文件中的datasource更改为我放入MatTableDataSource的实际列表,它会显示数据。

.ts文件代码

 weekView : PlanningCalendarWeek = new PlanningCalendarWeek();

 displayedColumnsWeek = this.buildDisplayedColumsWeek();

 weekViewDataSource;

 constructor(private dataService: DataService) {}

 ngOnInit() {
   this.getTimePhasing();
   this.headerweekList = new Array<string>();
   this.createHeadersForWeek();
   this.weekViewDataSource = new MatTableDataSource(this.weekView.machineTypePlannings);
}

1 个答案:

答案 0 :(得分:0)

我发现了我的问题!谢谢@Prachi。将数据列表分配给数据源时,我的数据列表仍未定义,以下行修复了它:

this.dataService.getTimePhasedWeekView().subscribe(planning => {
  this.weekView = planning;
  this.weekViewDataSource = new MatTableDataSource(planning.machineTypePlannings);
});