我遇到以下错误:
无法在'FileReader'上执行'readAsDataURL':参数1的类型不是'Blob'。
我正在尝试将文件数组发送到后端,在这里我需要在https请求中指定3个项目。
我有这个:
const handleImageReader = async (type, image, otherInfo) => {
const imageData = new FormData();
const imageReader = new FileReader();
imageReader.onloadend = async function() {
imageData.append('type', type);
imageData.append('otherInfo', otherInfo);
imageData.append('image', image, image.name);
await CompanyInfoFilesAPICall(imageData);
};
if (image) {
imageReader.readAsDataURL(image);
}
};
const handleRequest = () => {
const productsOrServicesImages = startupFourthStepForm.products_or_services;
if (has(startupFourthStepForm.products_or_services, 'photos_videos')) {
for (let i = 0; i < productsOrServicesImages.length; i += 1) {
handleImageReader('STARTUP_PROFILE_IMAGE', productsOrServicesImages[i], i);
}
};
如果我删除了第三个参数(otherInfo
),一切都会顺利进行。该参数只是索引。这是一个要求,但它不是'Blob'类型。
我该如何解决此错误?