$locationProvider
で新しいHTMLテンプレートをレンダリングせずに、AngularJSでサービスを使用したいと思いng-view
ます。
データ要素の存在へのバインドをdiv
介してオンデマンドで表示される要素があります。ng-show
これをブラウザの場所に配線したいのです$locationProvider
が、同じテンプレート内にとどまります。
レンプレート:
<div> other stuff ... </div>
<div ng-show="model">{{ model.element }}</div>
コントローラ:
Controller = function($scope, $location) {
$scope.show = function() {
$scope.model = model; // show div
}
$scope.hide = function() {
$scope.model = null; // hide div
}
}
$location
これにサービスを統合する方法がわかりません。AngularJSは、history.pushState
直接設定されている場合も場所を上書きします。