element UI el-upload组件实现视频文件上传视频回显

这篇具有很好参考价值的文章主要介绍了element UI el-upload组件实现视频文件上传视频回显。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

项目中需要提供一个视频介绍,使用Vue+Element UI中的el-upload组件实现视频上传及进度条展示,后台提供视频上传API并返回URL, 百度找了一番后最终实现了。

HTML

<el-upload
     class="avatar-uploader"
     action=""    //上传地址
     v-bind:data="{ FoldPath: '上传目录', SecretKey: '安全验证' }" //可删除
     v-bind:on-progress="uploadVideoProcess"
     v-bind:on-success="handleVideoSuccess"
     v-bind:before-upload="beforeUploadVideo"
     v-bind:show-file-list="false"
     :headers="headers"   //头部携带的token 非必须
     >
     <video
     v-if="videoForm.showVideoPath != '' && !videoFlag"
     v-bind:src="videoForm.showVideoPath"   //上传后回显的地方
     class="avatar video-avatar"
     controls="controls">
     您的浏览器不支持视频播放
      </video>
     <i v-else-if="videoForm.showVideoPath == '' && !videoFlag" //i标签是上传前的那个+上传后隐藏
     class="el-icon-plus avatar-uploader-icon"
     ></i>
     <el-progress v-if="videoFlag == true" type="circle"
     v-bind:percentage="videoUploadPercent"
     style="margin-top: 7px"></el-progress>
 </el-upload>

JS

 //上传前回调
    beforeUploadVideo(file) {
      var fileSize = file.size / 1024 / 1024 < 50;   //控制大小  修改50的值即可
      if (
        [
          "video/mp4",
          "video/ogg",
          "video/flv",
          "video/avi",
          "video/wmv",
          "video/rmvb",
          "video/mov",
        ].indexOf(file.type) == -1     //控制格式
      ) {
        layer.msg("请上传正确的视频格式");
        return false;
      }
      if (!fileSize) {
        layer.msg("视频大小不能超过50MB");
        return false;
      }
      this.isShowUploadVideo = false;
    },
    //进度条
    uploadVideoProcess(event, file, fileList) {    //注意在data中添加对应的变量名
      this.videoFlag = true;  
      this.videoUploadPercent = file.percentage.toFixed(0) * 1;
    },
    //上传成功回调
    handleVideoSuccess(res, file) {
      this.isShowUploadVideo = true;
      this.videoFlag = false;
      this.videoUploadPercent = 0;
 
      console.log(res);
      //后台上传数据
      if (res.success == true) {  
        this.videoForm.showVideoPath = res.data.url;    //上传成功后端返回视频地址 回显
      } else {
        this.$message.error("上传失败!");
      }
    },

data

      videoFlag: false,
      //是否显示进度条
      videoUploadPercent: "",
      //进度条的进度,
      isShowUploadVideo: false,
      //显示上传按钮
      videoForm: {
        showVideoPath: "",  //回显的变量
      },

css

.avatar-uploader-icon {
  border: 1px dashed #d9d9d9 !important;
}
.avatar-uploader .el-upload {
  border: 1px dashed #d9d9d9 !important;
  border-radius: 6px !important;
  position: relative !important;
  overflow: hidden !important;
}
.avatar-uploader .el-upload:hover {
  border: 1px dashed #d9d9d9 !important;
  border-color: #409eff;
}
.avatar-uploader-icon {
  font-size: 28px;
  color: #8c939d;
  width: 300px;
  height: 178px;
  line-height: 178px;
  text-align: center;
}
.avatar {
  width: 300px;
  height: 178px;
  display: block;
}

成功后的截图

element 视频,javascript,vue.js,vue.js,前端,javascript,ui,音视频

 文章来源地址https://www.toymoban.com/news/detail-740715.html

到了这里,关于element UI el-upload组件实现视频文件上传视频回显的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue Element ui上传组件el-upload封装

    注释: 1. limit 可上传图片数量 2. lableName 当前组件name,用于一个页面多次使用上传组件,对数据进行区分 3. upload 上传图片发生变化触发,返回已上传图片的信息 4. imgUrl 默认图片

    2024年02月11日
    浏览(63)
  • element-ui文件上传el-upload

            element-ui官网中有文件上传         首先先展示一下我页面的实现效果,如下图所示:          从图中可以看出,我这边实现的是一个可显示进度条的文件上传操作,而且如果上传的文件很大等,还可以中断文件上传。         值得注意的是,如果有添

    2024年02月05日
    浏览(53)
  • element-ui ,el-upload 文件上传必选项校验

    代码

    2024年02月11日
    浏览(65)
  • 解决element-ui中组件【el-upload】一次性上传多张图片的问题

    前端 后端 后端使用的是multer中间件,用来接收前端发送过来的multipart/form-data形式的数据 multer.js router.js

    2024年02月12日
    浏览(54)
  • element ui实现el-upload用户头像上传(单图上传)

     这是我们要实现的效果 element ui上的代码和效果如下:  接下来我们需要将图片文件上传到接口中,实现代码如下:

    2024年02月12日
    浏览(47)
  • 使用element-ui的el-upload进行excel文件上传与下载

    需求:前端上传文件后,后端接受文件进行处理后直接返回处理后的文件,前端直接再将文件下载下来。 通常我们都是直接使用el-upload的action属性来直接完成文件上传的操作,如果要进行后续文件的直接下载,可以在on-success中用代码进行操作,若存在401权限问题也可以直接

    2024年02月11日
    浏览(45)
  • element-ui的el-upload上传文件按钮在选取文件按钮禁用后仍可点击问题

    element-ui的el-upload上传文件按钮在选取文件按钮禁用后仍可点击,如下图: 点击按钮已经置灰,但是仍能点开选择图片弹窗,虽然无法上传,但是体验不好。 听说是因为:disabled只是禁用了点击事件,并没有禁用打开文件选择窗口 方法一: 附代码: 方法二: 换成一个假的

    2024年02月11日
    浏览(57)
  • 使用el-upload组件实现递归多文件上传

    一、需求描述:在页面上点击按钮弹出选择电脑文件的界面,可以一次性选择多个文件一起上传到服务器上,并把上传成功的文件展示在页面上。 · 二、 问题阐述:el-upload是支持多文件上传的,但是是同步进行的,你点击上传按钮,选择了多个文件后点击确定,会同时调用

    2023年04月08日
    浏览(40)
  • vue3 - 使用element-plus组件库el-upload上传超大mp4视频分片上传,Upload上传大文件mp4视频进行切片分段上传到后端服务器教程,vue3如何上传很大的视频(详细示例代码

    在vue3+elementPlus中,使用el-upload组件\\\"切片分段\\\"上传mp4大视频到服务器,支持任意大视频、大文档、大压缩包等超大文件,通用方法将其拆分成多个小段进行逐个逐条上传到后端(支持断点续传、下载预览)。 详细大文件分片功能源码,可只拿前端源码或只拿springboot(Java)后

    2024年03月16日
    浏览(82)
  • vue 2.0+element ui 使用el-upload图片上传

    ** ** 使用el-upload将图片加载成Base64格式,通过form统一上传给后端 1、创建通用component ImgComponent.vue 2、在父组件中使用 3、最后通过form统一submit到后端,图片参数传base64即可。 ps:起初在数据库中,将存图片的字段类型设置为BLOB,以二进制的形势存储,后面发现会将“:”转

    2024年02月12日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包