サイドバーとメイン コンテンツ領域を持つ AngularJS アプリケーションを構築しています。どちらも、JSON データを取得するために $http サービスを個別に呼び出して設定されます。サイドバーの内容は基本的に目次であり、サイドバー項目の 1 つをクリックするとメイン エリアが更新されることを目的としています。
私がこれに最初に取り組んだのは、サイドバーとメイン領域を 1 つのパーシャルにまとめ、それを両方の取得を行うコントローラーに関連付けることでした。アプリケーションにはコントローラーを URL に関連付けるルートがあり、サイドバーのリンクは適切なパラメーターを使用してこれらの URL にアクセスし、目的のコンテンツをメイン領域に表示します。これはすべて機能しますが、ページ全体が更新されます。「部分的」は実際には「全体」です。
私がやりたいことは、サイドバーのリンクをクリックすると、メイン コンテンツ エリアのみが更新されるようにすることです。1 つ考えられるのは、どうにかしてそれを 2 つのコントローラー/部分ペアに分割し、サイドバーのクリックで更新を要求する方法を見つけることです。ただし、これを行うメカニズムについてはわかりません。もう 1 つのアプローチは、1 つのコントローラーにデータを保持し、この更新をトリガーする何らかの共有状態を使用することです。リンクに ng-click ディレクティブを設定してこれを実行しようとしましたが、期待どおりにスコープ変数が更新されませんでした。
この種の AJAX 駆動の部分ページ更新を実現するためにアプリケーションを構築する推奨される方法はありますか? かなり一般的なケースのように思えますが、AngularJS を十分に習得していないため、解決策を得ることができません。