我有一个使用2个子组件的Angular2组件。模板看起来像
<component-A/>
<component-B/>
我想将component-A实例注入component-B的构造函数中。有没有办法在我的根组件上引用提供程序中的组件A?
答案 0 :(得分:1)
这打破了首先制作两个组件的全部目的。既然你要依赖另一个,你就不能单独重复使用它们,也可以使它们成为一体。
创建一个包含内部组件及其所需信息的父级,并将该信息设置为@Input
的每个子组件:
https://angular.io/docs/ts/latest/api/core/Input-var.html
一些原始的例子:
<component-A (modeSelected)="selectedMode==$event"/>
<component-B [mode]="selectedMode" />
或:
<component-A #modeSelector/>
<component-B [mode]="modeSelector.selectedMode" />
()
表示输出,[]
表示输入。
在第一个示例中,selectedMode
是父控制器的一个属性,它同时包含A和B组件。在第二个示例中,selectedMode
是组件A的属性。