element-ui上传组件,before-upload发送异步请求 + Promise

发布时间 2023-05-09 17:30:45作者: LALAYU

element-ui上传组件,before-upload发送异步请求 + Promise

before-upload为false的时候会阻止图片的上传 但是和chenge事情一起不行 可以:http-request="fnUploadRequest"
<el-upload
            --snip--
            :before-upload="beforeAvatarUpload"
            --snip--
  </el-upload>

  

但是发现,使用了async关键字后,直接返回false,也显示的是上传成功:

methods:{
    async beforeAvatarUpload(file){ return false;}
 }

  

  原因解析如下:

async的原理就是返回promise了,如果结果是true和false,转换成promise后,
promise的状态为fulfilled,结果为false而已。那么仍然得到的是Promise.resolve方法一样。
所以这时候即便为false。仍然可以执行上传操作。
以下能解决异步: