現在の ember のドキュメントでは、状態についてほとんど言及されていません。これは、今は使用すべきではなく、上に構築されたルーターのみを使用する必要があるということですか?
アプリケーションの状態がどのように進行するかについては、少し不明です。私が考えている問題の例は、ログイン画面から、ログインの成功と、ログインしたユーザーの管理者権限に応じて、2 つまたは 3 つの場所のいずれかに移動することです。
現在の ember のドキュメントでは、状態についてほとんど言及されていません。これは、今は使用すべきではなく、上に構築されたルーターのみを使用する必要があるということですか?
アプリケーションの状態がどのように進行するかについては、少し不明です。私が考えている問題の例は、ログイン画面から、ログインの成功と、ログインしたユーザーの管理者権限に応じて、2 つまたは 3 つの場所のいずれかに移動することです。
ありがたいことに、StateManager
これ以上はありません。代わりに、ルーターを使用してすべてを実行します. たとえば、任意のコントローラーから、次を使用して選択したルートに変更できます。
this.transitionTo('login.invalid');
と を使用してLoginInvalidRoute
、 に移動LoginInvalidController
しLoginInvalidView
ます。したがって、ユーザーが間違った資格情報を入力した場合、それらをそのルートに転送できます。
ただし、ユーザーが正常にログインした場合は、ユーザーをアカウント ページに移動できます。
this.transitionTo('account.default');
管理者の場合は、管理者ダッシュボードへ:
this.transitionTo('account.administrator');
ルーターが次のように構成されている場合、これらはすべて完全に正常に機能します。
App.Router.map(function() {
this.resource('login', function() {
this.route('index');
this.route('invalid');
});
this.resource('account', function() {
this.route('default');
this.route('administrator');
})
});