УГЛОВЫЕ Динамические формы - использование данных ASYNC завершается неудачно - PullRequest
0 голосов
/ 07 мая 2018

Если вы знакомы с этим https://angular.io/guide/dynamic-form

При реализации этой поваренной книги, в контексте нашего приложения, все хорошо, когда я получаю ДАННЫЕ из жестко закодированного массива, но теперь у меня возникают проблемы, когда я уже вызываю методы ASYNC (ударяя по БД и GET). Должно быть, потому что я работаю над наблюдаемыми, я не знаю. Массив, который должен был быть передан как @Input компонентам, которые обрабатывают динамические формы, кажется UNDEFINED. Кажется, мне нужно завершить вызов ASYNC, прежде чем связывать что-либо с формами. Вот мой код:

для УСЛУГИ:

public getTechnicalSettingsList(extraHttpRequestParams?: any): Observable<Array<ITechnicalSetting>> {

  return this.getTechnicalSettingsWithHttpInfo(extraHttpRequestParams)

    .map((response: Response) => {
      if (response.status === 204) {
        return undefined;
      } else {
        return response.json();
      }
    });
}

ДЛЯ КОМПОНЕНТА:

ngOnInit(): void {
this._service.getTechnicalSettingsList().subscribe(technicals => {
    this.technicalSettings =  this._service.convertTechnicalSettingsToControls(technicals);

    console.log(this.technicalSettings);
});

}

HTML

<div class="container">
  <h2> Technical Settings</h2>
 <app-dynamic-form [technicalSettings]="technicalSettings"></app-dynamic-form>
</div>
...