ログインページ、登録アカウントページ、およびその他のページがある角度ページがあります。サイドバー、ツールバーなどがないため、ログイン/登録は他のページとは異なります。完全に異なるレイアウト。インデックスページとインデックスコントローラがあり、現在ロードするビューを決定します。このような何か:どの状態に応じて表示が異なる
<body ng-app="myApp" ng-controller="IndexController as vm">
<div ui-view ng-if="$state.current.name === 'home'"></div>
<div ng-if="$state.current.name !== 'home'">
<!--TOOLBAR-->
<!--SIDEBAR-->
<div ui-view></div>
</div>
</body>
現在の状態がhome
であれば基本的に、それは(sidenavなどのツールバーなしで)最初のビューをロードする必要があります。現在の状態がhome
に設定されていない場合は、ツールバー、サイドバーなどが表示されます。私はこれがうまくいくと思っていましたが、もっと良い方法がありますか?私は私のすべての州を私の内に持っていますapp.js
。
さまざまなビューを分離するより良い方法があるかどうかを教えてください。なぜ私がこれをやっているのは、すべてのインクルード(モデル、ビュー、コントローラ)と他のスクリプトを1ページ(上記を含むindex.html)に保存し、それに応じてビューを変更したいからです。ありがとう。
:ホームサインインしているとサインアップ。 'home.signin'と' home.signup'を状態として扱います。それでは、私が以前にしたことを単にやってみましょう。ここで状態が 'home'に設定されているかどうか確認します。 – MortenMoulder
テンプレートで状態を確認できないものを実行します。テンプレートは、可能な限り状態から切り離されている必要があります。州のプロバイダでそのロジックを行います。 –
ビュー/テンプレートを作成するにはどうしたらいいですか?異なる構造(あなたが見ることができるように)。 – MortenMoulder