ForkJoin () проблема на Angular - PullRequest
0 голосов
/ 25 мая 2018

Здравствуйте. В настоящее время я работаю над пользовательским интерфейсом, и мне нужно распечатать для каждого 'digId' значение, которое я получил в уникальном ответе JSON.В приведенном ниже случае у меня есть 3 инцидента, и я сделал форк, чтобы получить доступ к ответу 3 JSON.

digId='4149';                                               
digId2='4719';
digId3='4309';

ngOnInit(): void {

const parallel$ = Observable.forkJoin(
    this.http.get('http://ninjaopsapi?tablename=REF_OPS_ALARM&babylonref=' + this.digId),
      this.http.get('http://ninjaopsapi?tablename=REF_OPS_ALARM&babylonref=' + this.digId2),
        this.http.get('http://ninjaopsapi?tablename=REF_OPS_ALARM&babylonref=' + this.digId3)
    );

    parallel$.subscribe( data => {
    this.alarms = data, console.log(data);

  }) 

}

Моя цель состоит в том, чтобы напечатать элемент, обведенный синим, например: Capture

Но с помощью этого кода ниже в моем html, я получаю элемент [0] для трех инцидентов, и я не могу добавить дополнительно [0], чтобы выбрать только один.

<div *ngFor= "let alarm of alarms">

                <div [(ngModel)]="digId" ngDefaultControl>

                      <div>{{alarm[0].alertMessage}}</div>
                 </div>
</div>

Можно ли напечатать первый элемент первого элемента в массиве, когда .subscribe выполняется с помощью forkJoin ()?

Спасибо

ОБНОВЛЕНИЕ

Я только изменил {{alarm[0][0].alertMessage}} на {{alarms[0][0].alertMessage}} и удалил цикл *ngFor="let alarm of alarms, и он работает хорошо!Спасибо

1 Ответ

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

Вы можете просто сделать

parallel$.subscribe( data => {
    this.alarms = data.map(x => x[0]);
});

<div>{{alarm.alertMessage}}</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...