关于fileReader的一个坑

在用fileReader做图片浏览上传时, 
使用base64格式

        var _this = this;
        var reader = new FileReader();
        reader.readAsDataURL(file);
        reader.onload = function(e) {
          PostBatchUpload({
            content: e.target.result,
            module_name: "member_contract "
          })
            .then(data => {
              _this.uploadList.push({name: file.name, url:data.file_url});
              _this.uploadUrl.push(data.file_url);
            })
            .catch(err => {
              console.log(err);
              _this.$Message.error(err);
            });
        };

//读取后的回调js是多线程 reader.onloadend=(e)=>{ }

如果两次读取的都 是相同的文件,并不会执行加载完成事件。

所以必须在执行完reader.onload再执行想要请求的方法才能取到想要的参数。

猜你喜欢

转载自blog.csdn.net/Corey_mengxiaodong/article/details/82563622