获取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 = "添加知识科普";
    },
相关推荐
paopaokaka_luck9 分钟前
基于Spring Boot+Vue的吉他社团系统设计和实现(协同过滤算法)
java·vue.js·spring boot·后端·spring
90后的晨仔4 小时前
条件渲染:从传统原生到 Vue 的进化之路
前端·vue.js
草履虫建模4 小时前
RuoYi-Vue 项目 Docker 容器化部署 + DockerHub 上传全流程
java·前端·javascript·vue.js·spring boot·docker·dockerhub
90后的晨仔5 小时前
从传统 CSS 到 Vue 的 Class 与 Style 动态绑定全解
前端·vue.js
阿丽塔~6 小时前
【vue3+vue-pdf-embed】实现PDF+图片预览
javascript·vue.js·pdf
独泪了无痕7 小时前
Vite 模块动态导入之Glob导入
前端·vue.js·vite
codervibe7 小时前
使用 Vue3 + Axios 与 Spring Boot 高效对接(含 token 处理)
前端·vue.js
圆心角8 小时前
vue keep-alive 原理
前端·vue.js
前端赵哈哈8 小时前
项目中的Vue I18n 9.x可以与VSCode插件i18n Ally配合使用
前端·vue.js·visual studio
小毛驴8508 小时前
Vue 传统全局引入方式,ES 模块化方式引入 对比
前端·javascript·vue.js