Получил ошибку Project Deployment в Angular 6 - PullRequest
0 голосов
/ 18 сентября 2018

Произошла ошибка при развертывании из-за функции загрузки и просмотра изображений.

Функция в исходном коде - слово ' result ' в красной строке.Но работающая функция и изображение могут успешно просматриваться в шаблоне .

Моя проблема в том, что код работает правильно, но не может быть развернут. Пожалуйста, дайте мне предложение изменить исходный код или покажите мне мою ошибку.

Ошибка в CLI

ERROR in src/app/register/register.component.ts(74,36): error TS2339: Property 'result' does not exist on type 'EventTarget'.

Ошибка / искажение в исходном коде

Property 'result' does not exist on type 'EventTarget'

Component.ts

Если консоль 'eventURL', то этот массив содержит элемент 'result'

enter image description here

 onFileChanged(event: any) {
   if(event.target.files && event.target.files.length) {
       this.filesToUpload = event.target.files[0];
       this.filesName = uuid();

       var reader = new FileReader();
       reader.readAsDataURL(event.target.files[0]); 
       reader.onload = (eventURL) => { 
       this.url = eventURL.target.result;
    ;
  }
 }
}

Изображение успешно Предварительный просмотр с использованием вышеуказанной функции

enter image description here

1 Ответ

0 голосов
/ 18 сентября 2018

Поскольку вы знаете, что свойство существует, вы можете использовать event.target['result'] в качестве обходного пути.Это обходит проверку типовскриптов.Однако я хотел бы убедиться, что событие приведено к нужному типу, чтобы эта ошибка вообще не возникала.Вы можете попробовать что-то вроде этого:

let target = event.target as FileReader;
target.result;
...