fileListforEachfile = formDataappendfile fileraw; ;这里的filelist是包含多个图片url地址对象的数组遍历后formdata为空怎么解决
根据代码中的注释,fileList 是包含多个图片 URL 地址对象的数组,而不是包含多个文件对象的数组。因此,你需要首先将这些 URL 地址转换为文件对象,然后将它们添加到 formData 中。你可以使用 fetch API 和 Blob 构造函数来实现这一点。下面是一个示例代码:
const fileList = [
{ url: 'http://example.com/image1.jpg' },
{ url: 'http://example.com/image2.jpg' },
];
const promises = fileList.map(item =>
fetch(item.url)
.then(response => response.blob())
.then(blob => new File([blob], 'image.jpg'))
);
Promise.all(promises).then(files => {
const formData = new FormData();
files.forEach(file => {
formData.append('file', file);
});
// 在这里使用 formData
});
在上面的代码中,我们首先使用 fetch API 从 URL 地址获取文件的二进制数据,并使用 blob 方法将其转换为 Blob 对象。然后,我们使用 File 构造函数将 Blob 对象转换为文件对象,并将其存储在 files 数组中。最后,我们遍历 files 数组,将每个文件对象添加到 formData 中。现在,你就可以在 formData 中包含多个文件对象了
原文地址: http://www.cveoy.top/t/topic/ckGB 著作权归作者所有。请勿转载和采集!