@hamster141095

Почему при загрузке input file повторно появляется файл?

Почему когда я повторно загружаю файл, у меня сохраняются предыдущие ? И как мне связать dropArea с формой? (чтобы можно было отправить данные).

if (window.FileList && window.File) {
  dropZone.addEventListener('dragover', (event) => {
    event.stopPropagation();
    event.preventDefault();
    event.dataTransfer.dropEffect = 'copy';
  });

  dropZone.addEventListener('drop', (event) => {
    event.stopPropagation();
    event.preventDefault();

    const file = event.dataTransfer.files[0];

    reader.readAsDataURL(file);

    reader.addEventListener('load', (event) => {
      checkUploadFile(file, error, event);
    });
  });
}

fileLoader.addEventListener('change', (event) => {
  const files = event.target.files;
  let file = files[0];

  reader.addEventListener('load', (event) => {
    console.log(file);

    checkUploadFile(file, error, event);
  });

  reader.readAsDataURL(file);
});


614207df81c10427542154.jpeg
  • Вопрос задан
  • 83 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Вангую, что reader у вас - глобальная переменная с инстансом FileReader.
И вы каждым вызовом reader.addEventListener навешиваете на неё ещё один обработчик события 'load'.
В результате все навешенные обработчики срабатывают на загрузку каждого следующего файла.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы