文件阅读器同步

问题描述 投票:0回答:1

我有以下javascript代码尝试将文件上传到存储库但我需要先将其作为缓冲区传递。问题是我的“getBatchFileBuffer”函数在某种程度上继续而没有等待它解决,这使得“UploadFiles”只能获得一个承诺,而不是真正的对象。 TIA

const getBatchFileBuffer = file => {
  return new Promise((resolve, reject) => {
    var reader = new FileReader();
    reader.onloadend = function(e) {
      file[0].fileBuffer = e.target.result;
      resolve(file);
    };
    reader.readAsArrayBuffer(file[0].fileObject);
  });
};

getBatchFileBuffer(self.state.tempAttachment).then(function(
            tempAttachment
          ) {
            self.setState({ tempAttachment });
            UploadFiles(
              self.state.AppMainObject.ID,
              getBatchFileBuffer(self.state.tempAttachment)
            ).then(function(UploadFilesFileURL) {
              console.log(UploadFilesFileURL);
            });
          });
reactjs filereader
1个回答
0
投票

我想我知道解决方案,我两次调用“getBatchFileBuffer”。那是我的错

© www.soinside.com 2019 - 2024. All rights reserved.