TypeScript圖片上傳,fileReader.onload異步無法賦值給全局變量


1、無法傳值給全局變量

protected getImage(image: any) {
    const fileReader = new FileReader();
    fileReader.readAsDataURL(image.files[0]);
    // tslint:disable-next-line:typedef
    fileReader.onload=function() {
  // 這里是無法賦值給base64Url的
      this.base64Url = fileReader.result;
    }
  }
2、怎樣才能賦值呢?需要將函數改成箭頭形式
protected getImage(image: any) {
    const fileReader = new FileReader();
    fileReader.readAsDataURL(image.files[0]);
    // tslint:disable-next-line:typedef
   // 這種才可以給全局變量賦值
    fileReader.onload = ()=> {
      this.base64Url = fileReader.result;
    }
  }
 
// 將文件讀取為base64,並將數據保存在result中
fileReader.readAsDataURL(image.files[0]);
 
頁面代碼:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM