【发布时间】:2018-09-07 00:06:13
【问题描述】:
我有以下 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);
});
});
【问题讨论】:
-
有没有办法确保“getBatchFileBuffer”功能100%完成
标签: reactjs filereader