构造函数(私有appService:AppService){} newHero:putDetail 数据源:MatTableDataSource; ngOnInit(){ this.appService.getcomplains() .subscribe(data => this.newHero = data); this.dataSource = this.newHero; } 错误:
输入' putDetail'不能分配给类型 ' MatTableDataSource&#39 ;.物业' _data'在类型中缺失 ' putDetail&#39 ;. (property)ComplaintsComponent.dataSource: MatTableDataSource
答案 0 :(得分:2)
您需要初始化dataSource
并使用this.dataSource.data
代替this.dataSource
并将其置于subscribe
内回调,以确保仅在您的订阅解决时才填充在那之前。
从http
获得的响应不是JSON数组,而是JSON对象。使用 Object.values 将响应转换为数组。
constructor(private appService: AppService) { }
newHero:putDetail
dataSource = new MatTableDataSource<putDetail>();
ngOnInit() {
this.appService.getcomplains()
.subscribe(data{ => this.newHero = data;
this.dataSource.data = Object.values(this.newHero);
});
}