我想在父组件中获取所有后代NgControls。为此,我在父级组件中使用ContentChildren。
我父母的组件看起来像这样:
<validation-group>
<input type="text" id="field-1" name="field1" formControlName="field1" />
<input type="text" id="field-2" name="field2" formControlName="field2" />
<address-field></address-field>
</validation-group>
address-field
组件的模板如下:
<input type="text" id="line-1" name="line1" formControlName="line1" />
<input type="text" id="postcode" name="postcode" formControlName="postcode" />
validation-group
组件:
export class ValidationGroupComponent {
@ContentChildren(NgControl) ngControls: QueryList<NgControl>;
ngAfterContentInit (): void {
// ngControls contains 2 ng controls: field-1, and field-2.
}
}
在ngAfterContentInit
方法中,ngControls字段仅包含field-1和field-2。
我需要我内部的所有ngControl。
您知道为什么我无权访问地址字段的ngcontrols吗?或者,也许您知道实现该目标的其他解决方案?