Загрузка файла на сервер Vue js

В общем, вопрос такой: Загружаю файлы на с vue js через axios из массива attached.

let formData = new FormData();
        formData.set("name", this.Form.name);
        formData.set("from", this.Form.from);
        formData.set("subject", this.Form.subject);
        formData.set("subject", this.Form.text);
        formData.append("files", this.attached);
        this.readFormData(formData)

        
        axios({
          method: "post",
          url: "/mail/",
          headers: { "Content-type": "multipart/form-data" },
          data: formData,
        });

Но на сервер файл приходит, как строка '[object file]', а не сам объект. Хотя в массиве attached лежит объект. бэкенд на yii2 введите сюда описание изображения

введите сюда описание изображения


Ответы (1 шт):

Автор решения: Vasiliy Rusin

Согласно документации на MDN Вы не можете отправить массив файлов, Вам нужно явно указать какой файл Вы хотите отправить.

// Файл, выбранный пользователем
formData.append("userfile", fileInputElement.files[0]);
→ Ссылка