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 相关文章推荐
asp.net+jquery滚动滚动条加载数据的下拉控件
Jun 25 Javascript
js Array对象的扩展函数代码
Apr 24 Javascript
javascript实现颜色渐变的方法
Oct 30 Javascript
js 通过html()及text()方法获取并设置p标签的显示值
May 14 Javascript
Vue 动态设置路由参数的案例分析
Apr 24 Javascript
Vue页面骨架屏注入方法
May 13 Javascript
vue实现未登录跳转到登录页面的方法
Jul 17 Javascript
vue项目开发中setTimeout等定时器的管理问题
Sep 13 Javascript
vue.js层叠轮播效果的实例代码
Nov 08 Javascript
vuex实现及简略解析(小结)
Mar 01 Javascript
Node如何后台数据库使用增删改查功能
Nov 21 Javascript
Element-ui Layout布局(Row和Col组件)的实现
Dec 06 Vue.js
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
phpmyadmin config.inc.php配置示例
2013/08/27 PHP
PHPAnalysis中文分词类详解
2014/06/13 PHP
php文件缓存类汇总
2014/11/21 PHP
yii中widget的用法
2014/12/03 PHP
深入理解javascript中return的作用
2013/12/30 Javascript
JS将光标聚焦在文本最后的实现代码
2014/03/28 Javascript
javascript巧用eval函数组装表单输入项为json对象的方法
2015/11/25 Javascript
深入剖析JavaScript面向对象编程
2016/07/12 Javascript
利用jQuery对无序列表排序的简单方法
2016/10/16 Javascript
Vue响应式添加、修改数组和对象的值
2017/03/20 Javascript
浅谈JavaScript find 方法不支持IE的问题
2017/09/28 Javascript
详解js类型判断
2018/05/22 Javascript
vue中注册自定义的全局js方法
2019/11/15 Javascript
详解javascript中var与ES6规范中let、const区别与用法
2020/01/11 Javascript
js实现盒子滚动动画效果
2020/08/09 Javascript
浅谈Python中copy()方法的使用
2015/05/21 Python
Python 内置函数memoryview(obj)的具体用法
2017/11/23 Python
Python使用Scrapy爬虫框架全站爬取图片并保存本地的实现代码
2018/03/04 Python
python中字符串变二维数组的实例讲解
2018/04/03 Python
matplotlib 输出保存指定尺寸的图片方法
2018/05/24 Python
python3监控CentOS磁盘空间脚本
2018/06/21 Python
Pycharm新手教程(只需要看这篇就够了)
2019/06/18 Python
python中pytest收集用例规则与运行指定用例详解
2019/06/27 Python
Windows系统下pycharm中的pip换源
2020/02/23 Python
使用python实现时间序列白噪声检验方式
2020/06/03 Python
Python通过递归函数输出嵌套列表元素
2020/10/15 Python
Python抓包并解析json爬虫的完整实例代码
2020/11/03 Python
python opencv肤色检测的实现示例
2020/12/21 Python
canvas实现扭蛋机动画效果的示例代码
2018/10/17 HTML / CSS
最好的意大利皮夹克:D’Arienzo
2018/12/04 全球购物
奥地利度假券的专家:we-are.travel
2019/04/10 全球购物
VLAN和VPN有什么区别?分别实现在OSI的第几层?
2014/12/23 面试题
报关员个人职业生涯规划书
2014/03/12 职场文书
工会工作先进事迹
2014/08/18 职场文书
2014年党支部工作总结
2014/11/13 职场文书
总经理助理岗位职责
2015/01/31 职场文书