ElementUI Upload上传 文件缩略图 删除

ElementUI 的 Upload上传 的 文件缩略图 部分,删除功能的实现没有写具体。在此补充一二:
在这里插入图片描述

 <el-form-item label="证件照片" prop="idPhoto">
	<el-upload 
		ref="pictureUpload" 
		action="https://jsonplaceholder.typicode.com/posts/" 
		list-type="picture-card" 
		:auto-upload="false" 
		:on-preview="handlePictureCardPreview"
		:on-remove="handleRemove"
		:limit="2"
	>
		<i slot="default" class="el-icon-plus"></i>
		<div slot="file" slot-scope="{ file }">
			<img class="el-upload-list__item-thumbnail" :src="file.url" alt="" />
                <span class="el-upload-list__item-actions">
                  <span
                    class="el-upload-list__item-preview"
                    @click="handlePictureCardPreview(file)"
                  >
                    <i class="el-icon-zoom-in"></i>
                  </span>
                  <span
                    class="el-upload-list__item-delete"
                    @click="handleDownload(file)"
                  >
                    <i class="el-icon-download"></i>
                  </span>
                  <span
                    class="el-upload-list__item-delete"
                    @click="handleRemove(file)"
                  >
                    <i class="el-icon-delete"></i>
				</span>
			</span>
		</div>
	</el-upload>
	  <!-- 1、预览 -->
	<el-dialog :visible.sync="dialogVisible">
		<img width="100%" :src="dialogImageUrl" alt="预览图片" />
	</el-dialog>
</el-form-item>

	// 2、下载
	handleDownload(file) {
        window.open(file.url)
	},
	// 3、删除--根据 url 的不同进行匹配删除
	handleRemove(file) {
        let uploadFiles = this.$refs.pictureUpload.uploadFiles
        for (var i = 0; i < uploadFiles.length; i++) {
          if (uploadFiles[i]['url'] == file.url) {
            uploadFiles.splice(i, 1)
          }
        }
	},
	// 点击文件列表中已上传的文件时的钩子
	handlePictureCardPreview(file) {
        this.dialogImageUrl = file.url
        this.dialogVisible = true
	},

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值