小编Tae*_*ide的帖子

JavaScript 中 FileReader 的异步/等待问题

我在 Vue.js 项目中使用 FileReader,并且此代码有问题:

async uploadDocuments(files) {
    for (let file of files) {
        let fileName = file.name;
        let fileContent;
        let reader = new FileReader();
        reader.onload = async () => {
            fileContent = reader.result;
            await this.submitFile(fileContent, fileName, fileType)
                .then(/* THEN block */)
                .catch(/* CATCH block */);
        };
        reader.onerror = (error) => { console.warn(error); };
        reader.readAsDataURL(file);
    }
    console.log("COMPLETED");
}

async submitFile(fileContent, fileName, fileType) {
    // this function should handle the file upload and currently contains a timeout
    await new Promise((resolve) => setTimeout(resolve, …
Run Code Online (Sandbox Code Playgroud)

javascript filereader async-await

9
推荐指数
1
解决办法
2万
查看次数

标签 统计

async-await ×1

filereader ×1

javascript ×1