要做一个加载进度条,请问axios,可以拿到它请求的时间吗,或者有什么简便的方法实现
2 回答

慕盖茨4494581
TA贡献1850条经验 获得超11个赞
进度条一般都是假的....请求过程中,时间都是未知的,怎么确定百分比呢?Axios.interceptors.request.use里console.log(+newDate())不就是请求时间吗?放进store里。Axios.interceptors.response.use里再获取结束时间。但是都结束了,拿到时间似乎也没啥卵用...而你要做的是请求的过程中显示百分比....可以试下这个vue-progressbar

慕妹3242003
TA贡献1824条经验 获得超6个赞
axios可以获取上传或下载进度的,请看看请求配置下的这两个方法:requestconfigonUploadProgress:function(progressEvent){//Dowhateveryouwantwiththenativeprogressevent},//`onDownloadProgress`allowshandlingofprogresseventsfordownloadsonDownloadProgress:function(progressEvent){//Dowhateveryouwantwiththenativeprogressevent},我试过是可以的,以前写的代码:this.axios({method:'POST',url:this.url,data:fmData,params:this.params,transformRequest:function(data){returndata},onUploadProgress:function(progressEvent){vm.$nextTick(function(){if(progressEvent.total===0){vm.percentage=0}else{vm.percentage=Math.round(progressEvent.loaded*100/progressEvent.total)}})}})
添加回答
举报
0/150
提交
取消