我根據我的一些工作在這裏所描述的同樣的問題:遞歸動態模板編譯
動態模板編譯動態組件與角2.0
How can I use/create dynamic template to compile dynamic Component with Angular 2.0?
工作plunker在上面的問題中描述的可以找到here。
如果動態細節嘗試創建另一個在模板中使用動態細節的動態視圖,則會出現此問題。如果我嘗試這樣做,我得到下面的異常:
「動態細節」不是一個已知的元素: 1.如果「動態細節」是角狀的部件,然後驗證它的一部分這個模塊。
這很容易通過更改plunker中的邏輯來創建一個動態模板來輸出「<dynamic-detail></dynamic-detail>
」。
在文件 「應用程序/動態/ template.builder.ts」 我已經改變了下面的代碼:
let editorName = useTextarea
? "text-editor"
: "string-editor";
要
let editorName = useTextarea
? "dynamic-detail"
: "string-editor";
當發生這種情況我碰到上面的例外。顯然,編譯器在遞歸完成時不熟悉動態細節。
我試圖添加DynamicDetail導入不同模塊沒有任何運氣。也許這不是解決方案的一部分。
謝謝!這實際上很好地工作!然而,下一個會議很快就來臨了。現在我想在其中一個部分中呈現動態細節。然後我得到和以前一樣的錯誤。如果我做dynamicDetail作爲forwardRef parts.module我會得到一個堆棧溢出異常。如果我在partsModule中導入DynamicModule.forRoot(),我得到一個'未定義的異常'...我怎樣才能讓我的任何部分呈現動態細節呢? –
http://plnkr.co/edit/UYnQHF?p=preview看看'parts.module.ts'和'dynamic。module.ts'但是,如果您將在動態組件中設置相同的模板,您將獲得循環調用 – yurzui