Member 12658724 Ответов: 0

Используйте forkjoin для обработки нескольких http - запросов


У меня есть http-запрос на получение данных из бэкенда.
В файле ts у меня есть
public prj1: string[] = [];
public prj2: string[] = [];

ngOnInit() {
    this.getProj1();
    this.getProj2();
}

getProj1() {
   this.service['pj1'].get().subscribe(data => {
      this.prj1 = data;
   });
}

getProj2() {
   this.service['pj2'].get().subscribe(data => {
      this.prj2 = data;
   });
}

Тебе не обязательно знать, что это такое. this.service
Это хорошо работает, я действительно получаю два строковых массива. Однако у меня есть много подобных методов, я хочу, чтобы все строковые массивы были параллельны. Поэтому я думаю, что, возможно, rxjs может это сделать. У меня нет опыта использования библиотеки rxjs. Пожалуйста, помогите мне в этом конкретном случае.

Что я уже пробовал:

  let one= this.service['pj1'].get();
  let two= this.service['pj2'].get();

forkJoin([one, two]).subscribe(results => {
  console.log(results[0]);
  console.log(results[1]);

Gerry Schmitz

Понятия не имею, сработает ли это, но вы все равно хотите попробовать?

0 Ответов