0

いくつかのネストされたビューの URL の場合、インデックス ページで ng-hide を使用したいと考えています。私のindex.htmlでは、次のようなものが必要です:

    <top-bar ng-if="!home"></top-bar>
    <ui-view class="reveal-animation"></ui-view>
    <bottom-bar ng-if="!home"></bottom-bar>

「ホーム」ビューに入るとバーが消えるようにしたい。同じ質問でここで見たように-答えはコントローラーで $location を使用することでしたが、インデックスページのコントローラーはどこにありますか?

ありがとう

4

2 に答える 2

2

親コントローラーで、次を追加します。

$scope.isHome = function(){
  return $state.is("home");
}

次に、テンプレートを次のように変更します。

<top-bar ng-if="!isHome()"></top-bar>
<ui-view class="reveal-animation"></ui-view>
<bottom-bar ng-if="!isHome"></bottom-bar>

この plunkr をチェックして、ライブ コードを確認してください。


別の方法は$stateChangeSuccess、次のようなものを使用することです。

$scope.$on("$stateChangeSuccess", function(event, toState){
  $scope.isHome = (toState.name == "home")
})

などもチェックすることをお勧めし$state.includesます$state.currentこちらのドキュメントを参照してください

于 2015-01-14T18:07:12.910 に答える
0

一度にすべてを教えるのは簡単ではありません。いくつかの概念を参照する必要があります。

http://viralpatel.net/blogs/angularjs-routing-and-views-tutorial-with-example/

このリンクが Angularjs を使い始めるのに役立つことを願っています。

于 2015-01-14T18:02:30.260 に答える