0
我有一小部分應用程序允許用戶上傳5張不同的圖片,只要圖片上傳完畢,它會顯示一個縮略圖。無法上傳多個文件
由於我上傳單個圖像一切正常。
只要我嘗試上傳多張圖片,讓我們坐在一起3,最後上傳3個相同的圖像,顯示3個相同的縮略圖...我越來越瘋狂。
這裏是處理這部分代碼:
HTML:
<input id="pics" type="file" accept="image/*" class="upload" data-imageid="" data-imageurl="" data-callback="displayPics" data-image-type="pics" multiple />
JS:
const fileInputs = document.querySelectorAll('input[type="file"]');
[].slice.call(fileInputs).forEach(fileInput => {
fileInput.addEventListener('change',() => {
uploadFile(
fileInput,
fileInput.getAttribute('data-callback')
);
});
});
unction uploadFile(input, callback) {
let formData = new FormData();
Object.keys(input.files).forEach(current => {
formData.append('file', input.files[current]);
fetchAPI({
target: 'pics/',
method: 'POST',
body: formData
})
.then(data => {
if (callback !== undefined) {
window[callback](data.response);
}
}, err => {
// err...
});
});
}
我能知道什麼是錯在這裏?謝謝
嗨,謝謝你的回答。那麼,'fetchAPI'是內置的東西,它的工作正常,因爲它...我更新了邏輯背後的提示,我有兩個問題:'response.json()不是函數',它只上傳一個單個圖像。我從'data'返回的只是一張圖片。並運行一次。 –
'formData'基本上是一個空對象。 –
@AyeyeBrazo你怎麼確定'formData'是一個空對象?您應該將'FormData'實例中的每個鍵設置爲不同的值 – guest271314