вам нужно инициализировать 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);
});
}