ここで説明されているのと同じ問題に基づいて、いくつかの作業を行いました。
Angular 2.0 で動的コンポーネントをコンパイルするための動的テンプレート
動的テンプレートを使用/作成して動的コンポーネントを Angular 2.0 でコンパイルするにはどうすればよいですか?
上記の質問で説明されている作業プランカーは、ここにあります。
dynamic-detail がテンプレートで dynamic-detail を使用する別の動的ビューを作成しようとすると、問題が発生します。それをやろうとすると、次の例外が発生します。
'dynamic-detail' は既知の要素ではありません: 1. 'dynamic-detail' が Angular コンポーネントの場合、それがこのモジュールの一部であることを確認します。
これは、plunker のロジックを変更して " <dynamic-detail></dynamic-detail>
" を出力する動的テンプレートを作成することで、簡単に再現できます。
ファイル「app/dynamic/template.builder.ts」で、次のコードを変更しました。
let editorName = useTextarea
? "text-editor"
: "string-editor";
に
let editorName = useTextarea
? "dynamic-detail"
: "string-editor";
それが起こると、上記の例外に遭遇します。どうやらコンパイラは、動的詳細が再帰的に行われる場合に慣れていないようです。
DynamicDetail をさまざまなモジュールのインポートに追加しようとしましたが、うまくいきませんでした。多分それは解決策の一部ではありません。