私は複数のルートにまたがる複数ページのフォームを持っています。すべてのルートには、APIから共有される同じデータが必要です。私は、APIの応答をngrx/store
の中に格納し、エフェクトを使ってAPI呼び出しをトリガーすることができます。私の質問は、API呼び出しをどこで開始するかについてです。 API呼び出しは、一度ユーザーが認証されたときに行う必要があります。これは、(マルチページフォームの最初の部分がアクセスされる前に)私がヒットした最初のルートで発生します。私が作ってみた2つのオプションがあります。ルート間で共有されたデータでngrxストアを設定する
は、私はちょうど情報私はルートを訪問するたびに要求する必要がありますを意味し、各ルートのコンポーネント内部の効果を発動します。ガードは、ユーザーが認証されていない間はすべてのページにアクセスできないようにします。
効果の中で認証された成功行動を聞いて、そこでAPIに要求してください。
確かに両方とも完全に受け入れられており、トレードオフがあります。いくつかの意見を得ることはちょうど良いだろう!
私は2番目のオプションでサイディングしていました。また、データがロードされている間、ガードを使用してルートをアクティブ化する前に待機するか、APIが各ルートコンポーネント内にロードされてスピナーなどを表示しているかどうかを確認することをおすすめしますか? – maddockst
通常は、情報がローディングとしてマークされている間はスピナーを表示します。私の意見では、レンダリングされるコンポーネントが要求される情報を持つ情報との機能/特性/関係に密接に関連しています。 –
私はあなたの意見を見ます。ガイダンスをありがとう! – maddockst