Ошибка в html-файле компонента anuglar: невозможно найти элемент управления с путем - PullRequest
0 голосов
/ 06 ноября 2019

Привет, я новичок в angular, и в настоящее время я получаю сообщение об ошибке, как показано ниже. Очень признателен за любую помощь, если вы можете пролить немного света на это.

GlobalSettingsComponent.html:66 ERROR Error: Cannot find control with path: 'tagonSettings -> tagonSettingFormGroup -> tagonType'
    at _throwError (forms.js:2432)
    at setUpControl (forms.js:2300)
    at FormGroupDirective.addControl (forms.js:6664)
    at FormControlName._setUpControl (forms.js:7314)
    at FormControlName.ngOnChanges (forms.js:7227)
    at checkAndUpdateDirectiveInline (core.js:12348)
    at checkAndUpdateNodeInline (core.js:13876)
    at checkAndUpdateNode (core.js:13819)
    at debugCheckAndUpdateNode (core.js:14712)
    at debugCheckDirectivesFn (core.js:14653)

Итак, вот что я пытаюсь сделать. У меня есть группа форм, и в ней есть массивы форм, как показано ниже

this.formGroup = this.fb.group({
      inventories: this.fb.array([]),
      flightRates: this.fb.array([]),
      settings: this.fb.array([]),
      tagonSettings: this.fb.array([])
    });

в массиве форм tagonSettings, который я пытаюсь создать и отправить экземпляр FormGroup, как показано ниже. причина, по которой я выдвигаю форму группы, потому что мне нужно сгруппировать несколько элементов управления.

this.globalTagonSettingsArray.push(
  new FormGroup({
      id : new FormControl( globalTagonSetting.id ),
      tagonText: new FormControl(globalTagonSetting.tagonText, [Validators.required] ),
      tagonType: new FormControl(globalTagonSetting.tagonType, [Validators.required] )
    }
  )
);

в моем компоненте html я делаю следующее.

 <div class="form-title mb-3 mt-3">{{ 'HEADINGS.ADDITIONAL_TAGON_SETTINGS' | translate }}</div>
    <div formArrayName="tagonSettings">
        <div class="row" *ngFor="let tagonSettingFormGroup of globalTagonSettingsArray.controls; let i = index">
          <div formGroupName="tagonSettingFormGroup">
            <div class="col-4">
                <input formControlName="tagonText">
            </div>
            <div class="col-4">
                <input formControlName="tagonType">
            </div>
            <div class="col-4"></div>
          </div>
        </div>
    </div>

1 Ответ

0 голосов
/ 06 ноября 2019

я должен был добавить formGroup] = "tagonSettingFormGroup". теперь он начал работать.

<div class="form-title mb-3 mt-3">{{ 'HEADINGS.ADDITIONAL_TAGON_SETTINGS' | translate }}</div>
    <div formArrayName="tagonSettings">
        <div class="row" *ngFor="let tagonSettingFormGroup of globalTagonSettingsArray.controls; let i = index">
          <div [formGroup]="tagonSettingFormGroup" >
            <div class="col-4">
                <input formControlName="tagonText">
            </div>
            <div class="col-4">
                <input formControlName="tagonType">
            </div>
            <div class="col-4"></div>
          </div>

        </div>
    </div>
...