有没有办法在Angular2依赖注入中使用模板中的值?

时间:2016-01-16 11:54:21

标签: angular

我有一个使用2个子组件的Angular2组件。模板看起来像

<component-A/>
<component-B/>

我想将component-A实例注入component-B的构造函数中。有没有办法在我的根组件上引用提供程序中的组件A?

1 个答案:

答案 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的属性。