错误:无法在“ FileReader”上执行“ readAsDataURL”:参数1的类型不是“ Blob”

时间:2019-06-04 08:54:15

标签: javascript reactjs ecmascript-6

我遇到以下错误:

  

无法在'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'类型。

我该如何解决此错误?

0 个答案:

没有答案