私はウェブアプリケーションを持っています。今まで、すべての URL を定義するために .when を使用してきました。今、私は $state をもっと知りたいと思っています。だから、私は次のように構成された Web を持っています: - ログイン ページ (パブリック) - 次に (プライベート): - ダッシュボード ホーム - ユーザー リスト
プライベート サイドは次の要素で構成されています: - ナビゲーション バー (上) ウェルカム メッセージ - サイドバー (右) ボタンのリスト (ホームとリスト) - ビュー (ダッシュボード ホームが表示され、ユーザーが「リスト」を押すと、ユーザーリストを参照してください)。
main.js で、私はこれを書きました:
'use strict';
angular.module('app', [
'app.login',
'app.dashboard'
]).config(
['$stateProvider', '$urlRouterProvider', '$resourceProvider',
function($stateProvider, $urlRouterProvider, $resourceProvider) {
$resourceProvider.defaults.stripTrailingSlashes = false;
$urlRouterProvider
.otherwise('/login');
$stateProvider
// Definizione dei template di base per le pagine
.state('app.dashboard', {
url: '/dashboard',
templateUrl: 'dashboard.html',
controller: 'dashboardCtrl'
})
.state('app', {
url: '/app',
abstract: true,
templateUrl: 'app.html',
})
.state('login', {
url: '/login',
templateUrl: 'login.html',
controller: 'LoginController'
})
.state('app.list', {
url: '/list',
templateUrl: 'list.html',
controller: 'ListController',
})
}])
アブストラクトであるべき/アブストラクトであってはならないものは何ですか? 「一般的な」$state を実行する必要がありますか? また、サインインしていないと先に進めない承認を追加したいからです。ルーティングを構造化し、抽象的な状態を理解するのを手伝ってもらえますか?