Angular 错误为无法找到路径控制:'_OSkilss -> 0 -> Imageuploade'

Angular Error As Cannot find control with path: '_OSkilss -> 0 -> Imageuploade'

请帮助我这是我在进行表单注册时遇到的错误

ngOnInit(){
    this._MyregisterForm = this.formBuilder.group({
                  _OSkilss: this.formBuilder.array([
            this.Addctrls()
        ])
    });
}
   Addctrls():FormGroup{
        return this.formBuilder.group({
            SkillName:['',Validators.required],
            SScCertificate:['',Validators.required]
        })
    }

我的Html页面是

<form [formGroup]="_MyregisterForm">
    <div formArrayName="_OSkilss" *ngFor="let education of _MyregisterForm.get('_OSkilss').controls; let i = index">
        <div [formGroupName]="i">
            <input type="text" formControlName="SkillName"> <br>
            <input type="file" formControlName="Imageuploade" (change)="handlesscFile($event.target.files)"><br>

        </div>
    </div>
</form>

Imageuploade 不是您的 ts 文件中定义的控件。

您需要将其添加到您的 Addctrls 函数中:

Addctrls():FormGroup{
        return this.formBuilder.group({
            SkillName:['',Validators.required],
            SScCertificate:['',Validators.required],
            Imageuploade: ['']
        })
    }

虽然问题很简单,但您正在尝试访问模板中的 Impageupload 控件,而该控件从未在 _OSkilss 控件数组中定义。

您需要在 Addctrls() 方法中添加该控件。

Impageupload:['', Validators.required]