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
  }
相关推荐
福兮说3 小时前
设计稿是 #4A7C6F,页面量出来是 #4B7C6F:HEX、HSL、透明度、canvas 来回转的七个坑
前端·javascript·css·canvas
郑州光合科技余经理4 小时前
海外版外卖加盟:总站与分站配送规则怎么分开管
java·开发语言·前端·后端·uni-app·php·ai编程
专业程序开发源4 小时前
springboot简历管理系统81389-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·php·课程设计
专业程序开发源4 小时前
springboot社区养老系统44071-计算机课程设计、毕业设计
vue.js·spring boot·后端·python·django·php·课程设计
小呆呆6664 小时前
副业搞起来,小说,漫画,漫剧的成本优化思路
前端·后端·面试
凤城老人4 小时前
从 PyQt6 到 Electron:给 Edge TTS 做一个“多角色配音机“的踩坑手记
javascript·typescript·electron
Dovis(誓平步青云)5 小时前
浇水提醒刚弹出又消失,植物状态别只存一个百分比
开发语言·前端·javascript·pdf·ecmascript·电脑
码艺-Alimjan5 小时前
Vben Admin 新增维吾尔语 Vben-Modal的关键坑之一
前端·javascript·vue.js
可乐鸡翅yeah_6 小时前
hls.js 手动自定义 http 请求 loader,修改请求头实战
开发语言·前端·javascript·网络协议·http·ecmascript·m3u8在线
IT_陈寒6 小时前
Vite静态资源导入这个坑我帮你们踩过了
前端·人工智能·后端