2020-01-09 本地上传文件速率的计算
描述:项目中对上传视频文件要求显示进度和速率
文件上传使用的组件是element-ui中的el-upload
使用el-upload中的钩子函数on-progress
和before-upload
中的参数计算出上传速率
<el-upload
class="uploadVideo"
ref="uploadVideo"
action="/static/videoFile"
:on-progress="onProgress" // 文件上传时的钩子(function(event, file, fileList))
:before-upload="beforeUpload" // 上传文件之前的钩子,参数为上传的文件(function(file))
:show-file-list="false"
accept="video/*"
>
<el-button type="primary">
<i class="iconfont icon-yunshangchuan my-btn"></i>本地上传
</el-button>
</el-upload>
使用上传时的钩子函数on-progress
,这时候会把一个文件自动分为多个文件片段上传,保存在event参数里,从这个参数里取出loaded已加载的文件大小(字节),顺便设置当前时间
使用上文件之前的钩子函数before-upload
,在这函数里设置初始时间,这样loaded减去上一个已加载的loaded(初始为0)在除以时间差在做下转换处理就可以得到这片段上传的速率了
计算文件上传速率函数
//