Как получить длину файла для реагирования JS - PullRequest
0 голосов
/ 15 ноября 2018

Я использую загрузку файлов, поскольку я добавил проверку, если файла нет, затем отобразил сообщение об ошибке. Я могу получить длину файла, но когда страница обновляется, я также получаю изображение. Я не знаю, как узнать длину файла. Может кто-нибудь помочь мне разобраться в этом вопросе Спасибо заранее.

enter image description here

Условия, которые я использовал:

    if (!values.profilePicture) {
    errors.profilePicture = 'Employee Image Required';
  } else if (values.profilePicture && values.profilePicture.length === 0) {
    console.log('values.profilePicture.length', Object.keys(values.profilePicture).length);
    errors.profilePicture = 'Employee Image Required';
  }

1 Ответ

0 голосов
/ 16 ноября 2018

Каждый файл, который вы хотите выгрузить, имеет свойство размера файла, вы можете получить это свойство onChange событие.

<input type="file" accept="image/*" id="profilePic" onChange={(e)=>this.uploadImage(e)}>

и uploadImage функция должна иметь вид

uploadImage=(e)=>{
  let file = e.target.files[0];
    if (file && !file.name) {
       window.alert("Please select a file");
       return false;
    }
    if (file.size > 10e6) {
      window.alert("Please upload a file smaller than 10 MB");
      return false;
    }
}

Примечание. Размер файла 10e6 равен 10 МБ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...