图片上传器 FileReader 在 angular 6 中不工作

Image uploader FileReader not working in angular 6

我正在使用 socket.io 实现小型聊天应用程序。一切正常 fine.Also 我必须上传图片进行聊天并且已经实现了。

My code is working if I put break point. (see image below)

I have added break point to reader.readAsDataURL(event.target.files[0]); and debug

但是当我在没有断点的情况下检查它时,它不起作用。 reader.result 为空。

我需要在某个时间添加 sleep() 吗?

onFileChanged(event) {
 
    var reader = new FileReader();   
    reader.readAsDataURL(event.target.files[0]); 
    
    alert(reader.result );
    //chat box inputcode here
}
<form novalidate="" #chatForm="ngForm" autocomplete="off">
    
    <a type="button"  (click)="fileInput.click()">
         <i class="glyphicon glyphicon-picture"></i>
     </a>
   
   <input style="display: none" type="file"(change)="onFileChanged($event)" #fileInput>   
   
   <input [(ngModel)]="_sendMessage.message" name="inputMessage" type="text"(keypress)="eventHandler($event)"  />

</form>

终于解决了这个问题。我提出自己的答案来帮助像我这样的人 :D

 onFileChanged(event) {
 
    var reader = new FileReader();   
    reader.readAsDataURL(event.target.files[0]); 
    
    reader.onload = (e) =>  {
         alert(reader.result );
        //chat box inputcode here
    }

}