前言:

今天刚好接到一个需求,上传文件到oss 不要手动点击上传按钮,想选择文件就直接上传,然后再文件能上传后发现,再次上传的时候并不会再次触发onchange 方法;

当你再次点击选择文件后,并不会打印;

我网上找了下,有人用v-if组件销毁 创建来解决,我觉得这个并不怎么合适,因为当你直接点击取消的时候捕获不到事件,又看到一个原生用input的来清空值;

结合了一下,这个方法。

通过vue的ref给上传组件,然后再打印内容里面我发现,当你选择了一个文件以后,这个地方就已经存在值了。且没有替换,就不再次执行on-change方法,只需要给按钮点击事件里面把这个值清空即可解决;

    let uploadFilesArr = this.$refs.uploadversion.uploadFiles; //上传文件列表
    if(uploadFilesArr.length ==0){
    }else{
       this.$refs.uploadversion.uploadFiles =[]

    }

 

 

Logo

前往低代码交流专区

更多推荐