vue.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript类库 > vue.js > vue的Element组件上传文件el-upload上传成功后清空

vue的Element组件上传文件el-upload上传成功后清空方式

作者:会迟到但不会缺席

文章介绍了几种清空文件上传组件的方法,包括设置file-list为空数组和修改组件key,这些方法可以帮助在新增或修改时清空组件内容,解决实际开发中的问题

vue的Element组件上传文件el-upload上传成功后清空

<el-upload action="#" ref="upload" list-type="picture" :show-file-list="true" :limit="1" :http-request="handleUpload">
        <el-button size="small" type="primary">点击上传</el-button>
      </el-upload><el-upload action="#" ref="upload" list-type="picture" :show-file-list="true" :limit="1" :http-request="handleUpload">
        <el-button size="small" type="primary">点击上传</el-button>
      </el-upload>

上传完成后执行清空

this.$refs.upload.clearFiles()

或者

const mainImg = this.$refs.upload
          if (mainImg && mainImg.length) {
            mainImg.forEach(item => {
              item.clearFiles()
            })
          }

如果有多个组件可以使用

file-list,可以设置file-list="[]"

<el-upload action="#" ref="upload" :file-list="normal" list-type="picture" :show-file-list="true" :limit="1" :http-request="uploadAvatarNormal">
            <el-button size="small" type="primary">点击上传图片</el-button>
          </el-upload>

然后清空normal字段即可

还有种情况是需要修改组件key来实现清空的

timer: '',
<ImageCropping :imageUrl="companyform.imageUrl" @change="uploadHandler" imgType="imageUrl" :key="timer"/>

其中timer是需要修改的,每次新增或修改的时候修改timer的值即可

/** 新增按钮操作 */
handleAdd() {
  this.reset()
  this.open = true
  this.timer = new Date().getTime()
  this.title = '添加信息'
},

解决了。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文