Я хочу привязать значение к элементам управления 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