Как установить значение для элементов управления FormArray в Angular 8 - PullRequest
0 голосов
/ 29 января 2020

Я хочу привязать значение к элементам управления FormArray и передать данные sh в элементы управления. Я могу установить контрольные значения, но выдает ошибку как

Error: Error trying to diff '[object Object]'. Only arrays and iterables are allowed

Я надеюсь, что это происходит, потому что значение просто идет как объект, а не как массив объектов. Может ли кто-нибудь помочь мне исправить это?

Я показываю демо.

HTML:

<div
  class="custom-file"
  (click)="fileInput.click()"
  appDragDrop
  (onFileDropped)="uploadFile($event)"
>
  <input
    type="file"
    #fileInput
    (change)="uploadFile($event)"
    class="custom-file-input"
    id="uploadFile"
    formControlName="fileName"
  />
  <input readonly="true" type="text" id="uploadFile" />
  <!-- <p>{{ item.controls.uploadFile.value}}</p> -->
</div>

Ts:

uploadFile(event, data) {
    const formData: FormData = new FormData();
    if (event.target.files.length > 0) {
      const file = event.target.files[0];
      this.agentW9InfoForm.setControl(
        'w9Info',
        this.FB.group({
          fileName: file,
          taxId: data.taxId.value,
          signatureDate: data.signatureDate.value,
          businessType: data.businessType.value,
          originalFileName: file.name,
          agentW9id: data.agentW9id.value,
          agentCode: parseInt(
            this.agentbasicInfoForm.controls['agentCode'].value
          )
        })
      );

      formData.append('file', this.w9InfoDetails.value.fileName);
      console.log(formData);
    }
}

DEMO

...