我有一个主要组件和几个孩子,每个孩子代表一个用户必须在表单中输入数据的过程中的一个步骤。
在主要组件中,我有一个路由器插座。我想为此使用反应形式,我想知道如何在主要组件中有一个表单组,让所有孩子在用户路由到下一个流程步骤时访问它。
我试过这样做:
<form class="form-horizontal" [formGroup]="myFormGroup">
<router-outlet [group]="myFormGroup"></router-outlet>
</form>
但是这会引发错误,因为路由器插座没有构建为具有自定义属性。
我会为此使用共享服务吗?我的<form>
标记会在哪里?
更新
我刚刚发现我可以这样做:
为父级:
export class ProcessStepsComponent implements OnInit {
myFormGroup: FormGroup;
constructor(
private formBuilder: FormBuilder
) { }
ngOnInit() {
this.myFormGroup = this.formBuilder.group({
});
}
childComponent:
export class ChainingAddressComponent implements OnInit {
constructor(private processSteps:ProcessStepsComponent) {
console.log(processSteps.myFormGroup);//returns the FormGroup
}
ngOnInit() {
}
}
我可以在构造函数中将父级注入我的孩子并使用其formgroup。
使用它有什么缺点吗?