当前位置: 首页 > article >正文

vue中 使用假的进度条数字插件:fake-progress

1.安装插件

npm install fake-progress

2.页面引用

在js中引用:import Fakeprogress from 'fake-progress'

3.定义

data() {
  return {
     fake: new Fakeprogress({
     timeConstant: 60000
     }),
   }
}

4.使用

在需要开始的地方使用:this.fake.start();

然后在需要放数字的地方使用:parseInt(fake.progress*100)

在需要结束的时候使用:this.fake.end();

5.使用示例

 

 

 

saveFile(data) {
      this.uploadVideoLoading = true;
      //开始进度条
      this.fake.start();
      var that = this;
      var mediaFile = data.file;
      var url = URL.createObjectURL(mediaFile);
      var showVideo = document.getElementById("test");
      var htmls = ' <video style="width:100%;height:100%;object-fit:fill;" id="video" muted="true" autoplay = "autoplay" controls> <source src="' + url + '">您的浏览器不支持 HTML5 video 元素。</video>';


      showVideo.innerHTML = htmls;
      var video_ = document.getElementById("video");
      //截取指定时间的图片作为封面图(第25秒)
      video_.currentTime = 1.000
      //截取视频封面图
      video_.addEventListener("loadeddata", function () {

          var canvas_ = document.getElementById("canvas_");
          canvas_.width = video_.clientWidth;
          canvas_.height = video_.clientHeight;
          canvas_.getContext("2d").drawImage(video_, 0, 0, canvas_.width, canvas_.height);
          var coverFile = that.dataURLtoFile(canvas_.toDataURL("image/png"), randomUUID() + ".png");
          const formDataCover = new FormData();
          formDataCover.append('file', coverFile);

          //上传视频
          const formDataVideo = new FormData();
          formDataVideo.append('file', mediaFile);
          postAction(that.url.fileUpload, formDataVideo).then((videoRes) => {
            that.uploading = false
            if (videoRes.success) {
              that.videoUrl = videoRes.message;
              //上传视频封面
              postAction(that.url.fileUpload, formDataCover).then((CorverRes) => {
                if (CorverRes.success) {
                  that.videoCover = CorverRes.message;
                   //结束进度条
                  that.fake.end();
                  that.uploadVideoLoading = false;
                }
              })
            }
          })


http://www.kler.cn/a/6699.html

相关文章:

  • 云原生之运维监控实践-使用Prometheus与Grafana实现对Nginx和Nacos服务的监测
  • 除了电商平台,还有哪些网站适合进行数据爬取?
  • C++ lambda(匿名函数)捕获自己
  • 【概率统计通俗版】极大似然估计
  • 某校园网登录界面前端加密绕过
  • 【支持向量机(SVM)】:算法原理及核函数
  • QT完善登录界面Ⅱ
  • 构建一个简单的网站,包括用户注册、登录功能
  • 转行大数据未来发展怎么样?可行么
  • OSPF的选路原则,重发布与RIP
  • 动态权限申请三方库
  • ethers不同版本返回余额的整数值类型,以及对大整数值的处理差异性的比较
  • pathlinux
  • 热门商业模式——分享购,整合流量与资源,实现生态布局
  • 【Redis】缓存一致性
  • 【Java笔试强训】day16编程题
  • 函数调用时栈空间的变化
  • 三次迭代终放“大招”,Themis Pro版即将问世
  • 第09讲:Spring Data Redis(RedisTemplate)
  • pdf怎么转换成jpg图片?快来收藏这两种方法
  • 【图论刷题-6】力扣 797. 所有可能的路径
  • 【K3s】第31篇 详解 TDengine 集群扩容、缩容、清理
  • 工厂方法示例
  • CDH6.3.2大数据集群生产环境安装(五)之httpd和clouderManagerServer、agent组件安装
  • Java基础之Set
  • 2023蓝牙耳机哪个品牌的质量好?耐用的蓝牙耳机推荐