我有一个包含三个组件的应用程序。应用程序,EditView,对话框。
应用程序组件包含EditView组件,它们可以包含许多其他EditView组件和一个Dialog组件(如果页面上显示Dialog组件)。
Dialog组件包含Application组件。当我把它放在声明路径中的Dialog组件中时:
m_pBuf
我收到此错误:
组件“对话框”视图
上的意外指令值'undefined'是否有可能有这样的结构,其中子组件可以包含关于某些条件的上层组件?
如果我从Dialog中删除Application组件或将其替换为其他组件,则可以正常工作。
Zlaja
答案 0 :(得分:4)
将它放在指令列表中将不起作用,但您仍然可以通过将其注入子指令的构造函数来访问父组件:
constructor(@Host(Application) application: Application) {
}
父组件可以使用@Query
获取子组件的实时列表:
constructor(@Query(EditView) editViews: QueryList<EditView>){
}
答案 1 :(得分:0)
我使用DynamicComponentLoader解决了问题。
请参阅https://groups.google.com/forum/#!topic/angular/tDU5sw1vBwc