错误错误:找不到名称为的控件:

时间:2020-08-09 18:24:44

标签: angular angular-reactive-forms formarray

我正在尝试使用表单数组提交反应式表单,我尝试了其他线程的解决方案,但是没有一个对我有用,我感觉我缺少了一些东西。确切的错误是ERROR错误:找不到名称为'stepName'的控件和ERROR错误:无法找到名称为'stepDesc'的控件。这是一个示例代码: HTML:

soup.find("div", {"id":"additional_stats_container"})

请忽略表单中未关闭的div。

div

我的提交表单:

<div formArrayName="knowSteps" cdkDrag *ngFor="let formGroup of knowSteps.controls; let i = index">
            <div [formGroup]="knowSteps.controls[i]">
              <mat-accordion>
                <mat-expansion-panel class="step-expand">
                  <mat-expansion-panel-header cdkDragHandle class="drag-drop">
                    <p>{{steptitle.value == '' ? 'Step' : steptitle.value}}</p>
                  </mat-expansion-panel-header>
                  <div clas="row">
                    <div class="col-md-12  p-3 mb-2 step-name" >
                      <mat-form-field appearance="outline">
                        <mat-label>Step Name</mat-label>
                        <input matInput formControlName="stepName" name="stepName" #steptitle>
                      </mat-form-field>
                    </div>
                  </div>
                  <div clas="row">
                    <div class="col-md-12  p-3 mb-2 step-description">
                      <mat-form-field appearance="outline">
                        <mat-label>Step Description</mat-label>
                        <textarea matInput formControlName="stepDesc" name="stepDesc"></textarea>
                      </mat-form-field>
                    </div>
                  </div>

我只放置了表单的这一部分,因为这是唯一不起作用的部分。 预先谢谢你。

1 个答案:

答案 0 :(得分:1)

this.formBuilder.group({
    stepName: new FormControl('', [Validators.required]),
    stepDesc: new FormControl('', [Validators.required]),
  })

应该在到达ngAfterViewInit之前被调用。通常在constructor / ngOnInit中。