2017-08-09 7 views
0

ルートとセレクタで同じコンポーネントにアクセスします。だから、 '/プロジェクトのプロジェクトリストコンポーネントへのルート、および角2コンポーネントアクセスコンテキスト - セレクタとルート

<projects></projects> 

は同様のコンポーネントを使用しています。どのメソッドがコンポーネントにアクセスするために使用されたのか知りたい。 ボトムライン - ルートアクセスはフルページであり、コンポーネントアクセスはウィジェット内にあります。アクセスがウィジェット経由である場合、私はいくつかのことが動作する方法を変更したい。

+0

角度2+の場合は、角度1.xで[タグ:角度]を使用してください。[タグ:angularjs] – 0mpurdy

答えて

2

あなたは、コンポーネントのコンストラクタでルーティングURL

を注入private activatedRoute: ActivatedRouteを確認することができますし、次のような

this.activatedRoute.url.subscribe(urlPath=>{}); 

以下のURLを取得することができprojectsが、そのほかのルーティングを経由して、それは、セレクタを経由している場合urlPathをチェック

+0

ありがとうございます。私はそれをする必要があるかもしれないと思った。私は実際にこの構造を抽象化しており、ルートをエンティティに一致させることを強制したくありません。代わりに、パスをチェックするのではなく、コンポーネントが呼び出されたことを示すフラグを探していました。その上の任意のアイデア? –

0

少しばかげたやり方で試してください。 入力変数@Input() isRoute: boolean = true;をコンポーネントに追加し、そのデフォルト値をtrueに設定します。 セレクタを使用する場合は、 <projects [isRoute]="false"></projects>のように使用してください。 このコンポーネントがルートで開くと、isRouteがtrueに設定されます。それ以外の場合は、このコンポーネントがセレクタを経由して開くときにisRouteはfalseになります。 :)

関連する問題