umi-request
umi-request copied to clipboard
umi-request Support uploading progress acquisition
请问是否支持获取上传进度
同问
不支持。因为umi-request是基于fetch协议的,fetch从底层就不支持进度,所以umi-request也不支持。如果必须用到的话,只能在这个需要用到进度的api上采用axios,其它api可以继续采用umi-request。
umi request可以兼容一下呀,判断传了上传进度的回调,就底层使用axios。不然开发者用了umi request,又需要监听进度的,岂不是每个人都要再用axios写一下了?
现在主要是浏览器不支持,什么时候浏览器支持了就可以用了。具体测试用例可以看 这里 ,注意那些ReadableStream
。
使用中间件 umi-request-progress可完美解决上传进度和下载进度的问题,步骤如下:
- 安装
npm install umi-request-progress
; - 使用:
//导入 umi-request
import request from 'umi-request';
//导入 umi-request-progress
import progressMiddleware from 'umi-request-progress';
// 注册内核中间件
request.use(progressMiddleware, { core: true });
// 上传文件
request("/file/upload",{
...otherOptions,
//上传进度事件的回调函数
onReqProgress:function( ev: ProgressEvent){
console.log(ev)
},
//下载进度事件的回调函数
onResProgress:function( ev: ProgressEvent){
console.log(ev)
},
});
同问
https://github.com/umijs/umi-request/issues/228#issuecomment-1197974297
请问是否支持获取上传进度
https://www.npmjs.com/package/umi-request-progress