サッカー トーナメントに関する情報を表示するための非常に単純な Angular アプリを作成しています。データベース内のトーナメントごとに、試合または統計のビューを表示したいので、次の単純な URL スキームを実装しています。
foo/matches
: トーナメント Foo の試合foo/stats
: トーナメント Foo の統計。
index.html
ファイルは次のように構成されています。
<nav ng-controller="NavController">
<ul>
<li> <a href="#/{{ t }}/matches"> Matches </a>
<li> <a href="#/{{ t }}/status"> Stats </a>
</ul>
</nav>
<div ng-view></div>
ルートは次のように構成されます。
app.config(['$routeProvider', function ($routeProvider) {
$routeProvider
.when('/:t/matches', {templateUrl: 'partials/matches.html', controller: 'MatchesController'})
.when('/:t/stats', {templateUrl: 'partials/stats.html', controller: 'StatsController' })
}]);
私の問題は{{ t }}
、HTML 内のリンクです。現在のトーナメントの統計または試合リストにビューを変更するためのリンクが必要です。しかし、リンクはビューの外側にあるため、ルート パラメーターにアクセスできません (注入を試みまし$routeParams
たが、取得できるのは空のオブジェクトだけです)。
要約すると、ビューを外部で変更するためのリンクを作成できませんでした。ナビゲーション バーは、現在のトーナメントが何であるかを知りません。
ビューの現在の状態 (この場合は現在のトーナメント) に外部からアクセスするにはどうすればよいですか (また、最善の方法は何ですか?)