【发布时间】:2017-07-01 09:13:16
【问题描述】:
我正在处理大型表单,因此我计划将表单截断为多个子组件,这有助于轻松集成和可维护性。使用表单生成器我正在尝试实现这一点。
mainform.html
<form novalidate (ngSubmit)="onSubmit(formDetail);" [formGroup]="formDetail">
<label>
<span>Name</span>
<input
type="text"
placeholder="Enter emp name"
formControlName="name">
</label>
<app-userinfo></app-userinfo> <!-- Child component 1 -->
<app-useracc></app-useracc> <!-- Child component 2 -->
</form>
mainform.ts
export class MainformComponent implements OnInit {
formDetail: FormGroup;
constructor(private formBuilder: FormBuilder) { }
ngOnInit() {
this.formDetail= this.formBuilder.group({
name:'',
userinfo: this.formBuilder.group({
userid: '',
userph: ''
}),
useracc: this.formBuilder.group({
useracc: '',
usertransfer: ''
})
});
}
onSubmit(value:User){
debugger;
}
}
Console.log
formControlName must be used with a parent formGroup directive. You'll want to add a formGroup
是否可以将表单组件嵌套为单独的子组件?
【问题讨论】:
-
看起来子组件中的字段无法访问其父组件
formGroup。您是否在子组件中使用了formGroup指令?你能显示其中之一的 HTML 吗?
标签: angular angular2-forms angular2-directives