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 相关文章推荐
常见JS效果之图片减速度滚动实现代码
Dec 08 Javascript
jQuery中json对象的复制方式介绍(数组及对象)
Jun 08 Javascript
document节点对象的获取方式示例介绍
Dec 24 Javascript
Javascript中的Callback方法浅析
Mar 15 Javascript
SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
Dec 10 Javascript
详解微信小程序开发之下拉刷新 上拉加载
Nov 24 Javascript
Promise.all中对于reject的处理方法
Aug 01 Javascript
vue中引用swiper轮播插件的教程详解
Aug 16 Javascript
解决vue的变量在settimeout内部效果失效的问题
Aug 30 Javascript
使用JavaScript计算前一天和后一天的思路详解
Dec 20 Javascript
js判断在哪个浏览器打开项目的方法
Jan 21 Javascript
js实现简单图片拖拽效果
Feb 22 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
深入extjs与php参数交互的详解
2013/06/25 PHP
php登陆页的密码处理方式分享
2013/10/14 PHP
叫你如何修改Nginx与PHP的文件上传大小限制
2014/09/10 PHP
thinkPHP实现多字段模糊匹配查询的方法
2016/12/01 PHP
JS常见问题整理(持续更新)
2013/08/06 Javascript
JavaScript动态插入script的基本思路及实现函数
2013/11/11 Javascript
$.each与$().each的区别示例介绍
2014/03/20 Javascript
jquery使用$(element).is()来判断获取的tagName
2014/08/24 Javascript
js QQ客服悬浮效果实现代码
2014/12/12 Javascript
JavaScript之Object类型介绍
2015/04/01 Javascript
jQuery 移动端artEditor富文本编辑器
2016/01/11 Javascript
使用jQuery监听DOM元素大小变化
2016/02/24 Javascript
jQuery简单实现点击文本框复制内容到剪贴板上的方法
2016/08/01 Javascript
AngularJS过滤器详解及示例代码
2016/08/16 Javascript
浅谈Angularjs link和compile的使用区别
2016/10/21 Javascript
Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)
2017/06/09 jQuery
Mobile Web开发基础之四--处理手机设备的横竖屏问题
2017/08/11 Javascript
Vue组件化开发思考
2018/02/02 Javascript
js实现随机点名器精简版
2020/06/29 Javascript
three.js 制作动态二维码的示例代码
2020/07/31 Javascript
[41:20]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS DK
2014/05/26 DOTA
Python中的复制操作及copy模块中的浅拷贝与深拷贝方法
2016/07/02 Python
Python实用技巧之列表、字典、集合中根据条件筛选数据详解
2018/07/11 Python
Python模拟自动存取款机的查询、存取款、修改密码等操作
2018/09/02 Python
ubuntu上安装python的实例方法
2019/09/30 Python
html5启动原生APP总结
2020/07/03 HTML / CSS
澳大利亚电商Catch新西兰站:Catch.co.nz
2020/05/30 全球购物
Java的for语句中break, continue和return的区别
2013/12/19 面试题
"火柴棍式"程序员面试题
2014/03/16 面试题
请写出char *p与"零值"比较的if语句
2014/09/24 面试题
你所在的项目是如何确定版本号的
2015/12/28 面试题
西安夏日科技有限公司Java笔试题
2013/01/11 面试题
农村葬礼主持词
2014/03/31 职场文书
2015年统计员个人工作总结
2015/07/23 职场文书
丧事酒宴答谢词
2015/09/30 职场文书
SQL Server中搜索特定的对象
2022/05/25 SQL Server