Angular FormArray中的FormGroup
我正在使用FormArray,然后在其中包含表单组,但无法通过*ngFor访问html。我尝试了很多东西,但都不管用。这是打字脚本代码Angular FormArray中的FormGroup,angular,ngfor,angular4-forms,formgroups,Angular,Ngfor,Angular4 Forms,Formgroups,我正在使用FormArray,然后在其中包含表单组,但无法通过*ngFor访问html。我尝试了很多东西,但都不管用。这是打字脚本代码 private readonly TRAINING_FORM: any = new FormGroup({ // new FormControl('', Validators.required) codeSchool: new FormControl('', Validators.required), adressStreetInst
private readonly TRAINING_FORM: any = new FormGroup({
// new FormControl('', Validators.required)
codeSchool: new FormControl('', Validators.required),
adressStreetInst: new FormControl('', Validators.required),
adressCityInst: new FormControl('', Validators.required),
adressStateInst: new FormControl('', Validators.required),
adressZipInst: new FormControl('', Validators.required),
phoneInst: new FormControl('', Validators.required),
isProgramInst: new FormControl('', Validators.required),
faxInst: new FormControl('', Validators.required),
noteInst: new FormControl('', Validators.required),
// trainingExtraInformation: new FormArray([])
});
ngOnInit() {
this.loadForm();
}
loadForm() {
const trainingArray = new FormArray([this.TRAINING_FORM]);
const totalInst = new FormControl('', Validators.required);
this.trainingForm = new FormGroup({
totalInst,
trainingArray
});
}
这是我们的html
<div formArrayName="trainingArray">
<div *ngFor="let training of trainings; index as idx" formArrayName="idx">
<div class="form-group row">
<label class="col-sm-4 col-form-label">Training institution/hospital name
<span class="text-danger">*</span>
</label>
<div class="col-sm-8">
<input type="text" class="form-control" placeholder="No abbreviations, please"
[formControlName]="idx">
</div>
</div>
</div>
培训机构/医院名称
*
我可以看到您在这里使用ngFor
<div *ngFor="let training of trainings; index as idx" formArrayName="idx">
但是,您希望在哪里访问/显示每个“培训”对象?模板中没有您尝试此操作的部分。您忘记为FormGroup赋予值
loadForm() {
const trainingArray = new FormArray([this.TRAINING_FORM]);
const totalInst = new FormControl('', Validators.required);
this.trainingForm = new FormGroup({
totalInst:totalInst, //<--give value to TotalInst
trainingArray:trainingArray //<---idem
});
}
loadForm(){
const trainingArray=新表格([本培训表格]);
const totalInst=新表单控件(“”,需要验证程序);
this.trainingForm=新表单组({
totalInst:totalInst//