element图片上传组件,上传成功后无法再次上传问题解决

如果像这种使用的是http-request自主上传,则在图片上传成功后调用this.$refs["upload"].clearFiles()清除已上传的文件列表。

如果用的组件自动上传,则在:on-success回调中调用清除已上传的文件列表。

        <el-upload
          class="avatar-uploader"
          action=""
          ref="upload"
          :limit="1"
          :show-file-list="false"
          :http-request="httpRequest"
        >
          <img
            v-if="formData.avatar"
            :src="formData.avatar"
            class="avatar"
            style="width: 100px"
          />
          <i
            v-else
            class="el-icon-plus avatar-uploader-icon"
            style="
              border: 1px dashed #999;
              width: 100px;
              height: 100px;
              text-align: center;
              line-height: 100px;
              border-radius: 4px;
            "
          ></i>
        </el-upload>
// 图片上传
    httpRequest(data) {
      let self = this;
      // // 创建 FormData 对象,并添加图片数据和其他参数
      const formData = new FormData();
      formData.append("unitId", this.$store.getters.userEngager || "");
      formData.append("imageTitle", "logo");
      formData.append("fileImage", data.file);
      fetch(this.$store.getters.uploadBaseUrl, {
        method: "POST",
        body: formData,
      })
        .then((response) => response.json())
        .then((data) => {
          console.log("data", data);
          this.formData.avatar = this.$store.getters.imgBaseUrl + data.data.url;
          this.$message.success("上传成功");
            //调用clearFiles删除已上传成功的图片列表
          this.$refs["upload"].clearFiles()
        })
        .catch((error) => {
          console.error(error); // 打印请求错误信息
        });
    },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值