angular2 formbuilder multi-nested formGroupName



我面临以下错误:

EXCEPTION: Uncaught (in promise): Error: Error in ./AccComponent class AccComponent - inline template:106:11 caused by: Cannot find control with name: 'det'

我的表单生成器如下:

this.AccForm = this.fb.group({
      accid: ['', Validators.required],
      accnbr: ['', Validators.required],
      cyc: this.fb.group({
        cycid:['', Validators.required],
        name:['', Validators.required],
        description:['', Validators.required],  
        det: this.fb.group({
          dcycid: ['', Validators.required],
          status: ['', Validators.required],
        })
      })
    });

在我的模板中,当我尝试获取表单组名称"det"时,我收到了错误?

    <div formGroupName="det">
           <div class="row">
             <div class="form-group>
                <span><strong>Id</strong></span>
                <input formControlName="dcycid" id="dcycid" type="number" class="form-control">
              </div>    
             <div class="form-group">
                <span><strong>status</strong></span>
                <input formControlName="status" id="status" type="text" class="form-control">
             </div>
           </div>
    </div>

备注 "det"嵌套在第 3 层。

知道怎么了?

谢谢。

/KOul

请找到更正后的 HTML,您需要做的是根据 JSON 嵌套表单组名称

<div [formGroup]="AccForm">
 <div formGroupName="cyc">
  <div formGroupName="det">
  <div class="row">
    <div class="form-group">
      <span><strong>Id</strong></span>
      <input formControlName="dcycid" id="dcycid" type="number" class="form-control">
    </div>
    <div class="form-group">
      <span><strong>status</strong></span>
      <input formControlName="status" id="status" type="text" class="form-control">
    </div>
  </div>
</div>

最新更新