2017-10-19 13 views
0

私は、役割に応じて自分のホームコンポーネントを設定したいだけです。同じテンプレートの別のテンプレートURL

  1. 例えば

    ホーム コンポーネントが管理者のためのテンプレートのURLをロードする必要がありますよりも、emplyeログインが、役割=管理者を持っている場合。

  2. 同様に、emplyeログインにロール=出納係がある場合、 ホームコンポーネントよりも、 キャッシャーのテンプレートURLをロードする必要があります。要するに

私は一つの構成要素を持っていることを言っている、と私は、3つの異なる役割

可能に三つの異なる時間に3つの別のテンプレートのURLをロードしたいですか?

+0

これは可能な限り多くの方法があります。ルーティングとルータのアウトレットまたはngswitchをチェックして、少しシンプルにしてください。 – rjustin

+0

あなたは最良のアプローチに私をリダイレクトしてください – faizan

+0

ありがとう#peace – faizan

答えて

0

私はあなたが

import { Router } from '@angular/router';
はtypescriptファイルにあなたのコンストラクタの内部private router: Router,を追加して、あなたの条件

また
if(role === admin) { 
    this.router.navigate(['/admin-page']);  
} else if(role === cashier) { 
    this.router.navigate(['/cashier-page']);  
} 

を持つことができますインポートする必要があるので 、ルータのリンクやルータのコンセントを使用しますapp-module.tsファイルにルータのリンクを作成することを忘れないでください。何か助けが必要な場合は教えてください。

+0

この場合、3つの役割のために3つのタイプスクリプトファイル(コンポーネント)を使用しなければなりません。各コンポーネントには独自のHTMLファイルがあります。 – faizan

+0

私のシナリオでは私は1つのコンポーネントを持っていて、ロールに基づいて実行時に3つの異なるhtmlファイルをロードしたいと考えています – faizan

+0

3つのコンポーネントすべてが1つしかない場合は、変数にロールの値を代入します。その後、あなたのHTMLファイルで

ADMIN CONTENT
の束をしてください。
CASHIER CONTENT

関連する問題