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


Posted in Javascript onAugust 20, 2019

直接通过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 获取视频时长的实例代码,希望对大家有所帮助,如果大家有任何疑问欢迎欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
jQuery不间断滚动效果(模拟百度新闻支持文字/图片/垂直滚动)
Feb 05 Javascript
JQuery获取表格数据示例代码
May 26 Javascript
jQuery拖动元素并对元素进行重新排序
Dec 30 Javascript
jQuery实现文章图片弹出放大效果
Apr 06 jQuery
详谈jQuery中使用attr(), prop(), val()获取value的异同
Apr 25 jQuery
vue插件vue-resource的使用笔记(小结)
Aug 04 Javascript
Vue代码分割懒加载的实现方法
Nov 23 Javascript
element-ui 设置菜单栏展开的方法
Aug 22 Javascript
Vue.js 实现数据展示全部和收起功能
Sep 05 Javascript
记录vue项目中遇到的一点小问题
May 14 Javascript
JS实现水平移动与垂直移动动画
Dec 19 Javascript
JS实现秒杀倒计时特效
Jan 02 Javascript
vue+elementUI实现图片上传功能
Aug 20 #Javascript
vue+elementUi图片上传组件使用详解
Aug 20 #Javascript
vue集成chart.js的实现方法
Aug 20 #Javascript
微信小程序实现定位及到指定位置导航的示例代码
Aug 20 #Javascript
微信小程序使用车牌号输入法的示例代码
Aug 20 #Javascript
JS中的算法与数据结构之字典(Dictionary)实例详解
Aug 20 #Javascript
Vue实现购物车详情页面的方法
Aug 20 #Javascript
You might like
PHP网页游戏学习之Xnova(ogame)源码解读(十三)
2014/06/26 PHP
php中json_encode处理gbk与gb2312中文乱码问题的解决方法
2014/07/10 PHP
PHP简单实现欧拉函数Euler功能示例
2017/11/06 PHP
浅谈PHP实现大流量下抢购方案
2017/12/15 PHP
JavaScript Undefined,Null类型和NaN值区别
2008/10/22 Javascript
JavaScript 关键字屏蔽实现函数
2009/08/02 Javascript
Javascript常考语句107条收集
2010/03/09 Javascript
Extjs的FileUploadField文件上传出现了两个上传按钮
2014/04/29 Javascript
jQuery实用技巧必备(上)
2015/11/02 Javascript
表单验证正则表达式实例代码详解
2015/11/09 Javascript
easyui tree带checkbox实现单选的简单实例
2016/11/07 Javascript
vue-router路由简单案例介绍
2017/02/21 Javascript
vue.js前后端数据交互之提交数据操作详解
2018/04/24 Javascript
vue父组件异步获取数据传给子组件的方法
2018/07/26 Javascript
vue实现拖拽的简单案例 不超出可视区域
2019/07/25 Javascript
JS常见面试试题总结【去重、遍历、闭包、继承等】
2019/08/27 Javascript
python 解析html之BeautifulSoup
2009/07/07 Python
python简单获取本机计算机名和IP地址的方法
2015/06/03 Python
利用Python获取操作系统信息实例
2016/09/02 Python
解决Python 中英文混输格式对齐的问题
2018/07/16 Python
Python3.5装饰器原理及应用实例详解
2019/04/30 Python
python 进程的几种创建方式详解
2019/08/29 Python
python和pywin32实现窗口查找、遍历和点击的示例代码
2020/04/01 Python
Python多分支if语句的使用
2020/09/03 Python
Smashbox英国官网:美国知名彩妆品牌
2017/11/13 全球购物
美国Randolph太阳镜官网:美国制造的飞行员太阳镜和射击眼镜
2018/06/15 全球购物
毕业生自荐信的主要内容
2013/10/29 职场文书
煤矿班组长的职责
2013/12/25 职场文书
学校万圣节活动方案
2014/02/13 职场文书
《山谷中的谜底》教学反思
2014/04/26 职场文书
2014中考励志标语
2014/06/05 职场文书
争先创优公开承诺书
2014/08/30 职场文书
高中生国庆节演讲稿范文2014
2014/09/21 职场文书
搞笑结婚保证书
2015/05/08 职场文书
职业生涯规划书之大学四年
2019/08/07 职场文书
MySQL控制流函数(-if ,elseif,else,case...when)
2022/07/07 MySQL