element-ui upload 多文件上传

有绑定file-list,又是多文件上传,在上传成功过的回调内有将返回值push到file-list数组的操作。

 <el-upload
        list-type="picture-card"
        :on-preview="handlePictureCardPreview"
        :on-remove="handleRemove"
        :headers="headers"
        :data="dataObj"
        :file-list="form.imgs"
        :limit="20"
        :on-success="handleImageSuccess"
        :action="action"
        multiple
      >
</el-upload>
handleImageSuccess(response) {
        const { url } = response.data
        that.form.imgs.push({
        imgPath: url
      })
    },

这样出现了明明是分多次上传文件,但是上传回调只触发了一次的问题,push进file-list数组的数据也只有最后一次上传文件的回调内容。这里的解决方式是用timeout为push操作进行延迟。

handleImageSuccess(response) {
      let that = this
     setTimeout(()=>{
        const { url } = response.data
        that.form.imgs.push({
        imgPath: url
      })
     },1000)
    },
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容