Не удалось присвоить значение источника данных в угловых - PullRequest
0 голосов
/ 27 мая 2018

enter image description here конструктор (private appService: AppService) {} newHero: putDetail dataSource: MatTableDataSource;ngOnInit () {this.appService.getcomplains () .subscribe (data => this.newHero = data);this.dataSource = this.newHero;} ошибка:

Тип 'putDetail' нельзя назначить типу 'MatTableDataSource'.Свойство _data отсутствует в типе putDetail.(свойство) ComplaintsComponent.dataSource: MatTableDataSource

1 Ответ

0 голосов
/ 27 мая 2018

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


        });

      }
...