文件分片上传
function chunkFile(file) {
const formData = new FormData()
const fileReader = new FileReader()
const chunkSize = 1024 * 1024 * 10
let fileChunkedList = []
for (let i = 0; i < file.size; i = i + chunkSize) {
const tmp = file.slice(i, Math.min(i + chunkSize, file.size))
if (i === 0) fileReader.readAsArrayBuffer(tmp)
fileChunkedList.push(tmp)
}
console.log(fileChunkedList)
fileReader.onload = async () => {
fileChunkedList = await fileChunkedList.map((item, index) => {
formData.append('file', item)
formData.append('maxChunk', fileChunkedList.length)
formData.append('chunk', index)
formData.append('fileName', file.name)
return formData
})
for (let [a, b] of formData.entries()) {
console.log(a, b, '--------------')
}
}
}