Несколько загрузок файла `reader.onloadend` не запускается

Я использую p-fileUpload в Angular 6.0.0 приложение, для загрузки файлов изображений (в этом случае несколько файлов изображений). Имеет обработчик события (uploadHandler) для загруженных файлов.

<p-fileUpload multiple="true" name="myfile[]" accept="image/*" [auto]="true" 
      customUpload="true" chooseLabel="Select" (uploadHandler)="uploadImage($event)">
 </p-fileUpload>

Файлы загружаются правильно, но я не могу сгенерировать код base64 при циклическом e.files массив, потому что reader.onloadend не стреляет. Я искал эту проблему увольнения и нашел некоторые связанные вопросы, но решение их не решает мою проблему. Ниже приведен код, который я написал для загрузки нескольких файлов изображений -

uploadImage(e: any) {
if (e && e.files.length) {
  const reader: FileReader = new FileReader();
  e.files.forEach((i: File, j: any) => {
    reader.onloadend = (ev: any) => {
      console.log('inside??');
      // Console is not triggered
    };
    // reader.readAsDataURL(...);
    this.cdr.markForCheck(); // For outside zone detection
  });
}

}

Пожалуйста, помогите мне с этой проблемой. Я использую этот же код для загрузки одного изображения (поэтому мне не нужно forEach цикл там) внутри того же приложения, и он работает во всех других местах, в отличие от этого случая.

0 ответов

Другие вопросы по тегам