Тип события для загрузки файла из элемента INPUT - PullRequest
0 голосов
/ 31 января 2020

Я использую следующий код для чтения содержимого локально сохраненного файла.

onFile(event: any) {
  console.log(event);
  const file = event.target.files[0];
  const reader = new FileReader();
  reader.onloadend = (ev: any) => { console.log(ev); };
  reader.readAsText(file);
}

Исследуя два выхода консоли, я вижу, что распечатаны два типа: Событие и ProgressEvent . Поэтому я реорганизовал свои методы, чтобы они соответствовали типам параметров следующим образом.

onFile(event: Event) {
  console.log(event);
  const file = event.target.files[0];
  const reader = new FileReader();
  reader.onloadend = (ev: ProgressEvent) => { console.log(ev, $event.target.result); };
  reader.readAsText(file);
}

Однако, хотя я и сделал это, я все еще вижу TsLint nag о файлах [0] и результат отсутствует в их типах. Я указал неправильный тип для операций? Каков подходящий тип в таком случае?

1 Ответ

0 голосов
/ 31 января 2020

target.files - это только свойство цели входного события. Компилятор не знает, какой тип события вы передаете ему, и нет события ввода типа, которое вы можете передать как тип объекта. Вам нужно либо создать его самостоятельно, либо оставить как есть. => https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement

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