2017-06-06 12 views
3

経路パラメータのタイプに基づいて異なるコンポーネントをロードする必要があります。ルート・パラメータが文字列であるならば、URLが同じままであることに注意してください数あるルートパラメーターた場合、その後のような角度2経路は、パラメータのタイプに基づいて異なるコンポーネントをロードします。

{ path: 'care/action/:number', component: NumberComponent},

の下に別のコンポーネントをロードし、以下のように

{ path: 'care/action/:string',component: StringComponent},

を一つのコンポーネントをロードパラメータの型だけが変更されます。

これを行うには?

ありがとうございます。

+0

ルータ解決を使用し、解決に応じて別のテンプレートをロードします。 異なるコンポーネントが必要ではありません別のテンプレートは、 –

+0

@ RahulSingh、解決に応じてテンプレートを読み込む方法を行うことができますか? –

+0

新しいif else blocjkを使用するか、値を取得するときに2つの構造的な指示があり、どの値が真であるかを確認して特定のdivやブロックを表示するか、テンプレートを使用するかを表示 –

答えて

1

あなたのルート設定にマッチャープロパティを利用し、マッチする関数を渡すことができます。マッチャー関数は正規表現を使用して文字列(文字列ルートの場合)または数値(数値の場合)をチェックします。

+0

ありがとう。私はこの例を見つけることができるいくつかのリソースを教えてください。 –

+0

残念ながら、まだ文書化されていませんが、ソースコードの例を見ることができます:https://github.com/angular/angular/blob/d58a242fe7b1d0e664733df3adfcbc458ec9dc67/packages/router/src/config.ts#L260-L293 –

+0

ありがとう、チェックアウトします。 –

関連する問題