それを表示する:
ステップ1 - 定義状態プロバイダの「認証」のような変数
angular.module('myApp')
.config(function ($stateProvider) {
$stateProvider
.state('view1', {
url: '/view1',
templateUrl: 'app/tests/view1.html',
controller: 'TestsCtrl1',
authenticate: false
});
$stateProvider
.state('view2', {
url: '/view2',
templateUrl: 'app/views/view2.html',
controller: 'TestsCtrl2',
authenticate: true
});
});
ステップ2 - クライアント/ app.jsの$ stateChangeStartのメソッドを変更します。これにより、stateChangeが検出され、宛先状態 に認証済みの値があるかどうかがチェックされます。 私はアプリ
// Redirect to login if route requires auth and you're not logged in
$rootScope.$on('$stateChangeStart', function (event, next) {
Auth.isLoggedInAsync(function(loggedIn) {
//Check if next view (ui-state) requires authentication
if (next.authenticate && !loggedIn) {
event.preventDefault();
$rootScope.lastState=next.name;
$state.go('login');
}
});
});
ステップ3の実行()関数でそれをやった - 各ビューの異なるHTMLテンプレートを作成します。
//view1.html
<div ng-include='"views/headerA.html"'></div>
<div ng-include='"views/contentA.html"'></div>
<div ng-include='"views/footerA.html"'></div>
//view2.html
<div ng-include='"views/headerB.html"'></div>
<div ng-include='"views/contentB.html"'></div>
<div ng-include='"views/footerB.html"'></div>
はそれが役に立てば幸い
解決しましたか、これで何かしましたか?答えはあなたに有効ですか?質問を閉じるか、回答を改善するために答えてください。ありがとう!! –