У меня есть метод.
private getData() {
console.log('Begin');
const sub1 = this.http['url1'].get();
const sub2 = this.http['url2'].get();
const sub3 = this.http['url3'].get();
const sub = forkJoin([sub1, sub2, sub3]).subscribe(([res1, res2, res3]) => {
console.log('fork join');
this.list1 = res1 as ProjectDto[];
this.list2 = res2 as Array<MyTest>;
this.list3 = res3 as Array<MyTest>;
sessionStorage.setItem('a', JSON.stringify(this.list1));
sessionStorage.setItem('b', JSON.stringify(this.list2));
sessionStorage.setItem('c', JSON.stringify(this.list3));
console.log('set items');
});
console.log('Completed');
}
Метод был вызван. Однако две строки журнала внутри forkJoin
не были вызваны вообще. Так что я не знаю, получаю ли я данные из сервиса успешно. Я использую rx js 5.5.6.
ОБНОВЛЕНИЕ:
Мое плохое, я только что обнаружил, что они были фактически распечатаны, поскольку обслуживание заняло очень много времени. Таким образом, возникает вопрос, как печатать журналы синхронно. Теперь они печатают Begin
и Completed
первыми.