File对象转base64

封装

async fileToBase64(file) {
  /*
    file  File对象
    */
  let reader = new FileReader();
  let fn = function() {
    return new Promise((resolve) => {
      reader.onload = function() {
        let obj = {
          code: 200,
          data: this.result,
          msg: '成功'
        }
        resolve(obj)
      }
      reader.onerror = function() {
        let obj = {
          code: 100,
          data: '',
          msg: '失败'
        }
        resolve(obj)
      }
    })
  }
  reader.readAsDataURL(file)
  let res = await fn()
  return res
}

调用

async upload(Files) {    
  let res = await file.fileToBase64(Files)    
  if(res.code == 200) {    
    // 成功    
  } else if(res.code == 100) {    
    // 失败    
    console.log(res.msg)     
  }    
} 

猜你喜欢

转载自blog.csdn.net/qq_42660374/article/details/129625995