問題タブ [concatmap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - RxJS を使用した Angular 6 での HTTP リクエストのシーケンス
私の目的は、POST リクエストを介してバックエンド サーバーに情報を保存することです。前のリクエストが終了したら、これらのリクエストを 1 つずつ実行する必要があります。ただし、リクエスト間にロジックを追加する必要があります。これらのリクエストは、RxJs Observablesを使用して行われます。
文脈を説明します。私のアプリには、Country、State、City、Address、Person の 5 つのモデルがあります。
Person には、City に属する Address、State に属する Address、Country に属する Address があります。
各モデルには、その「親」ID が外部キーとして含まれています (たとえば、City には属性「state_id」があります)。
すべての情報はフォームから入手できます。そのため、フォームを送信するときに、この情報をバックエンド サーバーに保存したいと考えています。
これを行うには、国/州/都市/住所がデータベースに既に存在するかどうか (GET 要求を介して) を確認する必要があります。存在する場合は、その ID を「子」にバインドする必要があります。そうでない場合は、POST する必要があります。その ID を「子」にバインドします。
どうすればこれを達成できますか? 私はいくつかの調査を行い、この配管concatMap()
演算子を実行しようとしました。concat
しかし、私の問題は次のとおりです。これらのリクエストをどのように行うことができますか?
これは私がこれまでに持っているものです:
これを正しく行う方法がわかりません。私が探しているリクエストのシーケンスは次のとおりです。
どうすればそれを行うことができますか?私の主な問題は、いくつかの GET リクエストの間にいくつかの POST リクエストを実行する必要がある場合と、そうでない場合があることです。ただし、状況ごとに Observable (国/州/都市... データを含む) を次のオペレーターに返す必要があります。