0

ユースケースでの使用方法を理解するのに苦労してngrouteおり、間違った方向からアプローチしているに違いないと考えています。

ユースケースは次のとおりです

  • ユーザーが Web ページに識別子を入力する
  • Angular コントローラはng-clickイベントに応答し、識別子を渡してサーバー側の呼び出しを行います
  • 識別子がサーバー側コードに認識されている場合、識別子に関連付けられた詳細を示すビューが表示されます
  • 識別子がサーバー側のコードに認識されていない場合は、別のビューが表示され、顧客は詳細を追加できます。

サーバー側の呼び出しを実行するために使用するサービスが$resourceあり、識別子がシステムに認識されているかどうかに応じて、 を設定し$location.pathました。

これを考慮して、正しい状況で現在のビューを表示しています。

しかし ....

サーバーからデータを正常に取得すると、ビューがレンダリングされますが、取得したばかりのデータが含まれていません。2 つのビューには異なるコントローラーがあります。2 つのコントローラーのコントローラーが異なっていると想定している$scopesため、ビューに正しくデータが取り込まれていません。それは正しい仮定ですか?

そうである場合、あるコントローラーで取得した結果を、別のコントローラーに関連付けられたビューで行われる処理と共有するにはどうすればよいですか。サービス自体にキャッシュしてサービスを共有するか、 にプッシュするかを考えました$rootscopeが、どちらもハックに感じられ、完全に間違ったアプローチを取っていると感じさせられます。

この種のユースケースに対処する通常の方法は何ですか?

4

0 に答える 0