获取el-disable弹框 中,el-upload对象,并清空列表,始终无法获取到ref的原因

java 复制代码
   <!-- 添加或修改服务器管理对话框 -->
    <el-dialog :title="title" v-model="open" width="800px" append-to-body>
      <el-form ref="form" :model="form" :rules="rules" label-width="100px">


        <el-form-item label-position="right" label="上传图片" prop="text">
          <el-upload
              ref="uploadPictureModel" :file-list="form.pictureShow"
                     :action="baseURL+uploadPath"
                     :headers="uploadHeader"
                     show-file-list
                     :limit="1"
                     :on-exceed="handleExceed"
                     :on-success="setPicture"
                     :on-remove="handleRemove"
                     :before-upload="checkFileType"
                     list-type="picture">
            <el-button size="small" type="primary" icon="el-icon-upload">点击上传</el-button>
            <div class="el-upload__tip">只能上传不超过 2MB 的图片</div>
          </el-upload>
        </el-form-item>
        <el-form-item label-position="right" label="上传视频" prop="text">
          <el-upload ref="uploadVideoModel" :file-list="form.videoShow"
                     :action="baseURL+uploadPath"
                     :headers="uploadHeader"
                     show-file-list
                     accept="video/*"
                     :limit="1"
                     :before-upload="checkFileSize"
                     :on-exceed="handleExceed"
                     :on-success="setPictureVideoShow"
                     :on-remove="handleRemove">
            <el-button size="small" type="primary" icon="el-icon-upload">点击上传</el-button>
            <div class="el-upload__tip">只能上传不超过 10MB 的视频</div>
          </el-upload>
        </el-form-item>
        <el-form-item label="文案" prop="advertisingCopy" label-width="100">
          <editor v-model="form.advertisingCopy" show-word-limit :max-length="2000" :min-height="192"/>
        </el-form-item>
      </el-form>
      <div class="dialog-footer">
        <el-button type="primary" :loading="isLoading" @click="submitForm">确 定</el-button>
        <el-button @click="cancel">取 消</el-button>
      </div>
    </el-dialog>

以上是弹框内容,但是如果弹框的open 为false 那么就会导致无法获取ref属性。

所以如果想要清空el-uplload上传列表,需要将el-disable弹框显示出来后也就是open=true的时候,再去通过 this.$refs.uploadVideoModel.clearFiles();去清空上传列表。

代码如下:点击新增的时候清空

java 复制代码
  /** 新增按钮操作 */
    handleAdd() {
      this.reset();
      this.form={}
      this.open = true;
      this.$refs.uploadPictureModel.clearFiles();
      this.$refs.uploadVideoModel.clearFiles();
      this.title = "添加知识科普";
    },
相关推荐
艾小逗1 小时前
vue3中的effectScope有什么作用,如何使用?如何自动清理
前端·javascript·vue.js
Hamm4 小时前
用装饰器和ElementPlus,我们在NPM发布了这个好用的表格组件包
前端·vue.js·typescript
HhhDreamof_5 小时前
云贝餐饮 最新 V3 独立连锁版 全开源 多端源码 VUE 可二开
前端·vue.js·开源
Simaoya5 小时前
【vue】【element-plus】 el-date-picker使用cell-class-name进行标记,type=year不生效解决方法
前端·javascript·vue.js
Dnn016 小时前
vue3+element-push 实现input框粘贴图片或文本,图片上传。
前端·javascript·vue.js
sen_shan7 小时前
Vue3+Vite+TypeScript+Element Plus开发-23.客制Form组件
vue.js
vvilkim7 小时前
React 与 Vue 虚拟 DOM 实现原理深度对比:从理论到实践
前端·vue.js·react.js
三原9 小时前
2025 乾坤(qiankun)和 Vue3 最佳实践(提供模版)
vue.js·架构·前端框架
DC...10 小时前
vue滑块组件设计与实现
前端·javascript·vue.js
H5开发新纪元10 小时前
Vite 项目打包分析完整指南:从配置到优化
前端·vue.js