FileReader.readystate 停留在 1。未触发 Onload

FileReader.readystate stuck at 1. Onload is not fired

我是 angular7 的新手,我只是想从 html 文件[=34= 中的输入类型文件中获取数据].我不明白。我得到了文件的名称和不同的规格,但没有得到它的正确数据。

关键是 readystate 没有变成 2,所以 result 属性 从来没有填充它,我无法得到数据如此。

据我所知:

TS

onChange(event) {
  if (event.target.files && event.target.files.length > 0) {
    const file = event.target.files[0];
    const reader = new FileReader();
    reader.readAsDataURL(file);
    reader.onload = this.saveImage(reader, event);
  }
}

private saveImage (reader: FileReader, ev: ProgressEvent): any {
  this.userInfo.Imagen = (reader.result as string).split(',')[1];
  this.converted_image = this.domSanitizer.bypassSecurityTrustResourceUrl(this.base64 + this.userInfo.Imagen);
  return null;
}

HTML

<input id="file-input" type="file" capture style="display:none" #fileInput (change)="onChange($event)"/>

但是我根本没有恢复任何数据。

谢谢朋友们。

最后...很奇怪,希望这个答案对大家有所帮助,或者至少能为您提供有关这种情况的线索。

Chrome版本,从7375(固定在里面)当一个事件调试器命令断点发生冲突IDE(调试器命令 事实上)。

解决方案只是在引发和启动事件及其事件方法的循环中消除任何调试器命令