Элемент управления деревом материалов не отображает асинхронные данные из службы http - PullRequest
0 голосов
/ 31 марта 2019

У меня возникла проблема с управлением деревом материалов в Angular 6. Когда я использую статические данные и возвращаю их в качестве наблюдаемой, используя оператор RxJS 'from', он работает нормально.Тем не менее, у меня есть веб-API, возвращающий аналогичные данные модели, которые я вызываю с помощью http-клиента get, и возвращает JSON.Однако в этом случае он не отображает элемент управления деревом.Возможно, поскольку ранее я использовал статические данные, они быстро возвращались, а с асинхронными данными пользовательский интерфейс связывается до того, как данные действительно возвращаются.

ngOnInit:void{
 this.nestedTreeControl = new NestedTreeControl<any>(this._getChildren);
    this.nestedDataSource = new MatTreeNestedDataSource();
    this.dataChange.subscribe(data => this.nestedDataSource.data = data);
    this.dataChange.next(this.treeData);
    this.dataService.getFolders().subscribe(data => {
      this.treeData.push(data);
    })
}

Куда я иду не так, может кто-нибудь определить проблему?

1 Ответ

0 голосов
/ 01 апреля 2019

Я не публиковал после обновления treeData.

this.dataService.getFolders().subscribe(data => {
      this.treeData.push(data);
      this.dataChange.next(this.treeData);
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...