为了账号安全,请及时绑定邮箱和手机立即绑定

antd upload组件的beforeupload的支持返回值的问题

antd upload组件的beforeupload的支持返回值的问题

料青山看我应如是 2018-10-20 14:10:34
我现在需要写一个方法,通过判断图片的长度和文件size来返回true或者falseconsole.log('file want upload ', file);    let reader = new FileReader();    reader.readAsDataURL(file);    if (file.size > 1024*1024*3) { // 大于3M      message.error('您上传的图片过大!请重新上传');      return false;    }    let img = new Image();    return (function () {      let flag: boolean=true;      ((flag) => {        reader.onloadend = function(evt){          img.src    = this.result;          let width  = img.width;          let height = img.height;          console.log(width);          console.log(height);          if (width < 2000 && height < 2000) {            flag = true;          } else {            flag = false          }        }      })(flag)      return flag;    })()但是这个很明显函数会先返回..所以onloadend里面修改flag的值实际上是无效的,我该怎样处理才能实现在onloadend之后再让外层函数返回结果呢?
查看完整描述

1 回答

?
动漫人物

TA贡献1815条经验 获得超10个赞

引入异步流程控制啊。。promise什么的


查看完整回答
反对 回复 2018-11-23
  • 1 回答
  • 0 关注
  • 1215 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信