Я пытаюсь разделить файл на фрагменты, чтобы загрузить его в OneDrive (Возобновляемая загрузка файлов / Создать сеанс загрузки для больших файлов).
Я мог бы найти примеры java-скриптов для этого.Но я делаю свой проект в SPFx и реагирую на фреймворк.
В настоящее время я использую функцию ниже, чтобы разделить файл на фрагменты.
// Reads in the chunk and returns a promise.
public readFragmentAsync(file, startByte, stopByte) : Promise<any>{
var frag = "";
const reader = new FileReader();
console.log("startByte :" + startByte + " stopByte :" + stopByte);
var blob = file.slice(startByte, stopByte);
reader.readAsArrayBuffer(blob);
return new Promise((resolve, reject) => {
reader.onloadend = (event) => {
console.log("onloadend called " + reader.result.byteLength);
if (reader.readyState === reader.DONE) {
frag = reader.result;
resolve(frag);
}
};
});
}
Но reader.onloadend не 'Кажется, меня уволили.
Я вызываю эту функцию, используя приведенный ниже вызов:
this.readFragmentAsync1(file, position, stopByte).then(chunkresponse =>{
//code here
}
Есть ли какие-либо изменения, которые я должен сделать в этом коде, чтобы событие onloadend было запущено иличтобы адаптировать его для реагирования на окружающую среду.
Статья на github, о которой я говорил, приведена ниже: Github Create Upload Session