Element Plus 文件上传格式校验

视频格式:'video/mp4', 'video/avi', 'video/mov', 'video/wmv', 'video/flv', 'video/ts'
视频格式校验以及空文件校验:
javascript 复制代码
<el-form-item label="视频选择" prop="fileList">
              <el-upload
                style="width: 200px"
                ref="uploadRef"
                action=""
                accept=".mp4.avi.mov.wmv.flv.ts"
                v-model:file-list="formModel.fileList"
                :limit="1"
                :http-request="handlerUpload"
                :headers="headers"
                :on-success="handleSuccess"
                :before-upload="beforeAvatarUpload"
              >
                <el-button type="primary">选择文件</el-button>
              </el-upload>
            </el-form-item>
javascript 复制代码
  const beforeAvatarUpload = (rawFile) => {
    let typeList = ['video/mp4', 'video/avi', 'video/mov', 'video/wmv', 'video/flv', 'video/ts']
    if (!typeList.includes(rawFile.type)) {
      proxy.$modal.msgError('请上传视频文件!')
      return false
    } else if (rawFile.size / 1024 / 1024 <= 0) {
      proxy.$modal.msgError('请勿上传空文件!')
      return false
    }
    return true
  }
图片格式 、空文件、重复上传校验:
javascript 复制代码
 <el-form-item label="海报选择">
              <el-upload
                style="width: 200px"
                ref="imgUploadRef"
                action=""
                multiple
                :file-list="imgList"
                accept=".jpg,.png,.jpeg"
                :http-request="handlerIMGUpload"
                :headers="headers"
                :before-upload="imgBeforeAvatarUpload"
              >
                <el-button type="primary">选择图片</el-button>
              </el-upload>
            </el-form-item>
javascript 复制代码
  const imgBeforeAvatarUpload = (rawFile, file) => {
    if (
      rawFile.type !== 'image/jpeg' &&
      rawFile.type !== 'image/png' &&
      rawFile.type !== 'image/jpg'
    ) {
      proxy.$modal.msgError('请上传图片文件!')
      return false
    } else if (rawFile.size / 1024 / 1024 <= 0) {
      proxy.$modal.msgError('请勿上传空文件!')
      return false
    } else {
      let newFilelist = imgList.slice(0, imgList.length - 1)
      if (newFilelist.some((item) => item.name == rawFile.name)) {
        proxy.$modal.msgError('请勿重复上传!')
        return false
      }
    }

    return true
  }
相关推荐
copyer_xyf14 分钟前
Python 如何同时做很多事:进程、线程、协程
前端·后端·python
gqk0132 分钟前
Delegate.Target/ Method
前端·ui·xhtml
有梦想的程序星空1 小时前
【环境配置】Vue3项目离线化本地部署echarts全攻略
前端·javascript·vue·echarts
IT_陈寒2 小时前
被Vite的动态导入坑了一整天,原来问题出在这
前端·人工智能·后端
薛先生_0992 小时前
vue-路由重定向
前端·javascript·vue.js
橘子星2 小时前
基于 ES6 语法的 NLP 任务模块化开发实践
前端·javascript
玉宇夕落2 小时前
Props的传递学习
前端
月光刺眼2 小时前
JS 底层执行机制探讨:执行上下文、变量提升与调用栈
前端·javascript
|_⊙3 小时前
Linux 信号
运维·服务器·前端
ZC跨境爬虫3 小时前
跟着 MDN 学 JavaScript day_1:什么是 JavaScript?
开发语言·前端·javascript·ecmascript