我根据我的一些工作在这里所描述的同样的问题:递归动态模板编译
动态模板编译动态组件与角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