Не удается обновить мои данные в приложении React. Застрял в методе исправления с Axios

#javascript #reactjs #axios

Вопрос:

Как я могу обновить свое изображение с URL-адреса s3. Мне нужно заменить существующее изображение в моих данных. В настоящее время я получаю Необработанный отказ (ошибка типа), который не может прочитать свойство » 0 » неопределенного. Это из части imgFile.file[0].

    async function putImageToAws(url, imgFile) {

    
    let headers = {
      'Content-Type': imgFile.fileType
    }

    return await axios.patch(url, imgFile.file[0], {headers})
  }

  async function updateData(name,id,imgFile,handleClear) {

    const data = {
      name: name,
      description:'none',
      id:id
    }

    let urlRes = await getAwsUrl();
    let imgRes = await putImageToAws(urlRes.data.urls[0].url, imgFile);

    if(imgRes.status === 200) {
      data['image'] = urlRes.data.urls[0].Key;
    }

    axios.patch(`admin/category?id=${editId}`.then((res) =>
    {
      console.log(res,'result of update');
      getAllCategories();
    }).catch((err)=> {
      console.log(err,'error from update');
    }))
  }
 

это из компонента редактирования, где я разрушил расширение s3 img и набрал

   const handleImage = (event) => {
    const extension = event.target.files[0].type.split('/');
    setAwsImageFile({file: event.target.files, extension: extension[1], fileType: event.target.files[0].type});
    readURI(event);
  }


  const handleImageDelete = () => {
      setImageURI("");
      setAwsImageFile({});
  }

  function handleClear() {
    setFoodName("");
    setImageURI("");
    setAwsImageFile({});
  }

  function setUpdateandClose() {
    props.setTrigger(false);
    updateFood(foodName, awsImageFile, handleClear);
  }