计算文件上传进度的方式:
文件上传进度 = (后端反馈已成功接收大小 / 文件总大小)100 + “%”
以上规则没什么大问题吧,但是!!!在进度字样随进度条显示时,出现了不和谐的数字,超长的小数:比如7.0000000000004,就算用上toFixed还是会出现这样的情况。更离谱的是,比如当前进度计算结果7.0000000000004,下一秒进度计算结果7.00,合着进度还给回退了啊?┑( ̄Д  ̄)┍
最后用字符串处理显示在进度条上的数字
let mustUp = 0;//防止数字反弹,显示数字回退的不良体验,同时也是进度条滚动进度的参考
let recentUp = (res.lodaded / res.total).toFixed(2);//toFixed大部分时间能起作用
mustUp = recentUp > mustUp ? recentUp : mustUp;
let str = (mustUp * 100).toString().slice(0,4) == '100.' ? '100' : (mustUp * 100).toString().slice(0,4);
let uploadRation = str + '%';