任何方式支持Angular2中的嵌套字段。
类
ngOnInit() {
this.form = this._fb.group({
name: {
given: ['', Validators.required],
middle: [''],
family: ['', Validators.required]
}
});
}
模板
<form [ngFormModel]="form">
<input ngControl="name.given" type="text" placeholder="First Name">
<input ngControl="name.middle" type="text" placeholder="Middle Name">
<input ngControl="name.family" type="text" placeholder="Last Name">
</form>
我在控制台中收到Cannot find control 'name.given'
错误输出。我已针对name['given']
尝试了一些其他语法name[given]
,ngControl
等,但遇到了同样的错误。
如何使用angular2中的嵌套字段?
答案 0 :(得分:2)
您使用ngControl
修改了内联表单(使用FormBuilder
)和程序化表单 - 在这种情况下,您需要使用ngFormControl
)。
我认为您正在寻找表单组。这是一个示例:
<div ngControlGroup="name" #cgName="ngForm">
<p>First: <input ngControl="give" required></p>
<p>Middle: <input ngControl="middle"></p>
<p>Last: <input ngControl="family" required></p>
</div>
请参阅此plunkr:https://plnkr.co/edit/M4FGTNAx8lo8jzBivH0P?p=preview。