私は 3 つの非同期アクション (オブザーバブル) を実行しようとしています。1. 最初のオブザーバブルは、モーダル ダイアログ eventEmiter の応答です。残りのフローは、その応答に依存します (「項目を削除しますか」に関するモーダル リターン ブーリアン エミッターとしましょう)。2. 2 番目のオブザーバブルは、更新 (削除) アクションです。 3. 3 番目は、削除後に新しいデータを取得しています。
私は rxjs- を使用しており、サブスクライブでサブスクライブせずにそれを行う方法を見つけようとしています。私のコードを見てください:
subscriptions : Subscription[] = [];
openDeleteDialog(data : any)
{
const modalRef : NgbModalRef = this.modalService.open(ConfirmationDialogComponent); //Modal dialoge reference
this.subscriptions.push(modalRef.componentInstance.passResult.subscribe(
(result =>//This is the response from the modal dialog
{
if (result)
{
let updateApi : UpdateApi = new UpdateApi(data);
this.srv.updateData(updateApi).pipe( //This is the update operation
tap(() =>
{
this.srv.getData(); //This is the fetch data operation
}
)
).subscribe();
}
}
)
));
}