2015-12-23 19 views
6

Angular2を使用するためのいくつかの研究を始めました。私が解決策を見つけることができないという質問の1つを始めました。モデルから受け取ったデータに応じて、特定のコンポーネントに異なるテンプレートをロードする必要があるという要件があります。これは主に、受け取ったデータに応じて異なるレイアウトを維持することに関連しています。これは可能ですか?Angular2テンプレートを動的にロード

ありがとうございます。

答えて

2

角度2は、UI構築のコンポーネント構成アプローチを優先します。このため、実際には巨大なテンプレートで終わるべきではありません。もしそうなら、それらをいくつかのヘルパーのサブコンポーネントに分割する方が良いかもしれません。

テンプレートが本当に大きくない場合、*ngIfディレクティブを使用して、一部のコンポーネントのプロパティに基づいて条件付きでレンダリングすることができます。これにアプローチする

もう一つの方法は、あなたがあなたがデータを取得する主なコンポーネントがあるとしましょうrouter.navigate(['./MySubcomponent'])

0

でデータを受信した後、そのコンポーネントレベルでのルートを実装して、プログラム的にこれらのルートにルートすることです。データに基づいて、使用するサブコンポーネントを選択することができます。各サブコンポーネントでは、特定のデータのテンプレートを定義することができます。

データが小さい場合は、メインコンポーネントのテンプレートで* ngSwithまたは* ngIfを使用してhtmlを切り替えることができます。

関連する問題