Rxjs — необходимо правильно переписать вложенную подписку [closed]

Мне нужна помощь в переписывании этой подписки, она работает, но мне не нравится, как она выглядит. Я работаю в Angular, а в Ngonit моего компонента панели инструментов мне нужно вызвать две службы. Для этого мне нужны два параметра: idCompany и accountId. Я запоминаю значение атрибута idCompany из selectedCompany $ observable, после этого мне нужно запомнить значение атрибута account из наблюдаемого account $, и после этого мне нужно вызвать две службы:

getDashboardInfo с параметрами accountId и idCompany и getAvailableSpace с параметром idCompany.

Это моя функция:

idCompany: number;
account: Account;
account$ = this.store.select(accountQuery.getAccount);
selectedCompany$ = this.store.select(companyQuery.getSelectedCompany);
space: number;


this.selectedCompanySubscription = this.selectedCompany$.subscribe(res => {
  if (res !== null && res !== undefined) {
    this.idCompany = res.id;
    this.account$.pipe(
      map(account => {
        this.account = account;
        this.getDashboardInfo(this.account.id.toString(), this.idCompany.toString(), 'time');
        this.dashboardService.getAvailableSpace(this.idCompany).subscribe(space => {
          this.space = space.value;
        });
      })
    ).subscribe();
  }
});

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *