ルートにアクセスチェックを入れて、実際のページではなくアクセス拒否ページを表示しようとしています。以下の例から、ルート クリックでアクセスが拒否されたことを警告できます。実際のページに移動してから、アクセスが拒否されたと表示したいと思います。
http://plnkr.co/edit/w1NCkGs0Tv5TjivYMdvt?p=preview
アクセス チェック付きの URL が で/admin/manageusers、コンポーネント名がManageUserComponentであるとしましょう。ユーザーがアクセス権を持っておらず、URL を試行した場合、ルートに移動する/admin/manageusers 必要がありますが、表示されるはずAccess Denied in the pageです。
1.私ができることの1つは、ルートresolve機能を使用して、ユーザーのアクセスに関連する値を取得しManageUserComponent、テンプレートを切り替えて切り替えることです。このアプローチは、アクセスロジックを実装したいルートに関連付けられた複数のコンポーネントに同様のコードを持つことになります。
componentアクセスチェックが必要なすべての場所を別のものに拡張しbase class、上記のロジックを検証し、成功した場合は子コンポーネントを続行できるようにします。別のクラスを適切に拡張する方法をまだ理解していない
主な目標は、アクセスした URL をページ内のエラー メッセージと共に保持することです。そして、コンポーネント関数は実行されるべきではありません。
実装するアプローチとオプションを考えられる場合は、共有してください。
説明が明確でない場合はお知らせください。改善に努めます。