vue 获取视频时长的实例代码

2022-10-16,,,,

直接通过element-ui自带的上传组件结合js即可,代码如下:

html:     

<el-upload class="upload-demo" :action="actionurl" :show-file-list="false" :on-success="handleavatarsuccess"
     :before-upload="beforeavatarupload">
     <button class="ce-button not-hover primary">
      <i class="ce-icon_upload"></i>
      <span>重新上传</span>
     </button>
    </el-upload>

js:

 beforeavatarupload(file) {
    var filename = file.name || ''
    var ext = filename.split('.')[filename.split('.').length - 1]
    if (ext !== "doc" && ext !== "docx" && ext !== "xls" && ext !== "xlsx"
     && ext !== "ppt" && ext !== "pptx" && ext !== "pdf" && ext !== "mp4") {
     this.$notify({
      title: "失败",
      message: "上传资源只能是 doc/docx/xls/xlsx/ppt/pptx/pdf/mp4 格式!",
      type: "error",
      duration: 3000
     });
     return false
    }
    // ppt(10mb),word(10mb),excel(5mb)
    if (ext == "doc" || ext == "docx" || ext == "ppt" || ext == "pptx") {
     debugger
     if (parseint(file.size) > parseint('10485760‬')) {
      this.$notify({
       title: "失败",
       message: "上传word、ppt文件上限为10mb!",
       type: "error",
       duration: 3000
      });
      return false
     }
    }
    if (ext == 'mp4') { // 获取视频时长
     var url = url.createobjecturl(file);
     var audioelement = new audio(url);
     var duration;
     audioelement.addeventlistener("loadedmetadata", function (_event) {
      duration = audioelement.duration; //时长为秒,小数,182.36
      this.$parent.$data.wduration = parseint(duration)
      console.log(duration);
     });
    }
    this.$parent.$data.wfilename = file.name
    this.$parent.$data.wsize = parsefloat(file.size / 1024).tofixed(2) //获取文件大小
   }

总结

以上所述是小编给大家介绍的vue 获取视频时长的实例代码,希望对大家有所帮助

《vue 获取视频时长的实例代码.doc》

下载本文的Word格式文档,以方便收藏与打印。