Получение файла как неопределенного при отправке в массив объектов с помощью FormData.append

#angular #file-upload

Вопрос:

Я пытаюсь отправить массив объектов на серверную часть. каждый элемент массива будет содержать объект с ценой поля и файлом, цель состоит в том, чтобы отправить массив объектов в API

 let attachmentArray = [
    {
      file: '',
      price: '2000'
    },
    {
      file: '',
      price: '1000'
    }
  ];

 selectAttachment(event, i) {
    const file: File = event.target.files[0];
    if (file) {
      const fileName = file.name;
      // this.attachmentArray[i].fileName = fileName;
      this.attachmentArray[i].file = file;
    }
    console.log(file);
  }

 this.attachmentArray.forEach((el, i) => {
  let formData = new FormData();
  el['file'] = formData.append('file', el.file);
});
 

Получение файла неопределенным

кодовая ссылка

ответ в консоли

Комментарии:

1. Вы публикуете массив данных формы, но не должны ли вы вместо этого публиковать одну форму с массивом файлов?

2. Вы хотите сказать, поместите всю форму в FormData.append («форма», это.attachmentArray) вот так, вместо отправки файла FormData.append(«файл», эл.файл) ? @Silvermind

3. Не так. Ознакомьтесь с этим руководством: blog.angular-university.io/angular-file-upload