业务场景
需要在upload的时候上传多张图片并且能够随时删除其中任意的一张图片,el_upload组件确实有很大的问题,封装的东西底层文档也写的不清不楚的,所以直接自己实现把,别指望官方的那个鸡肋了
效果图
实现步骤
代码语言:javascript复制<el-form-item label="产品图" prop="imgurls">
<el-upload
class="avatar-uploader"
action=""
:limit="3"
:http-request="getFile"
:show-file-list="false">
<i v-if="form.imgurls.length < 3" class="el-icon-plus avatar-uploader-icon"></i>
</el-upload>
<div v-for="(item, index) in form.imgurls">
<img v-if="item" :src="item" class="avatar">
<el-button type="warning" @click="handleRemove(index)">删除</el-button>
</div>
</el-form-item>
删除按钮我们需要将imgurls数组中选中删除的图片直接删除代码如下
代码语言:javascript复制handleRemove(index) {
this.form.imgurls.splice(index, 1)
},