uploadProgress 未被触发 rn-fetch-blob
uploadProgress not being triggered rn-fetch-blob
在开发 react-native 应用程序时,我在两个平台(iOS 和 Android)中都遇到了以下问题
环境:
"react-native": "^0.61.1",
"rn-fetch-blob": "^0.12.0"
我正在执行一个将视频上传到服务器的多部分请求。鉴于此请求需要时间,我想向用户显示进度。
根据库文档,有一个 uploadProgress
回调:https://github.com/joltup/rn-fetch-blob#uploaddownload-progress 但在我这边不起作用。
这是我的代码:
RNFetchBlob.fetch(
'POST',
`${REACT_APP_API_DOMAIN}/upload/video`,
{
Authorization: `Bearer ${token}`,
timestamp: `${timestamp}`,
'Content-Type': 'multipart/form-data',
},
[
{
name: 'video',
filename: `video.${file.split('.')[file.split('.').length - 1]}`,
data: RNFetchBlob.wrap(file),
},
],
)
.then(() => {
Notifier.showNotification({
title: 'The videos was successfully saved!',
description: "We're processing it, your profile will be updated soon!",
Component: NotifierComponents.Alert,
});
setStatus(statusEnum.PROCESSING);
completeCallback();
})
.uploadProgress((written, total) => {
console.log('uploaded', written / total);
})
.catch(err => {
Notifier.showNotification({
title: 'There was an error uploading the video',
description: err.toString(),
Component: NotifierComponents.Alert,
componentProps: {
alertType: 'error',
},
});
setStatus(statusEnum.FAILED);
completeCallback();
});
有什么想法吗?
这里已经回答了这个问题:https://github.com/joltup/rn-fetch-blob/issues/670#issuecomment-696016355
基本上我不得不交换 then
和 uploadProgress
回调。
在开发 react-native 应用程序时,我在两个平台(iOS 和 Android)中都遇到了以下问题
环境:
"react-native": "^0.61.1",
"rn-fetch-blob": "^0.12.0"
我正在执行一个将视频上传到服务器的多部分请求。鉴于此请求需要时间,我想向用户显示进度。
根据库文档,有一个 uploadProgress
回调:https://github.com/joltup/rn-fetch-blob#uploaddownload-progress 但在我这边不起作用。
这是我的代码:
RNFetchBlob.fetch(
'POST',
`${REACT_APP_API_DOMAIN}/upload/video`,
{
Authorization: `Bearer ${token}`,
timestamp: `${timestamp}`,
'Content-Type': 'multipart/form-data',
},
[
{
name: 'video',
filename: `video.${file.split('.')[file.split('.').length - 1]}`,
data: RNFetchBlob.wrap(file),
},
],
)
.then(() => {
Notifier.showNotification({
title: 'The videos was successfully saved!',
description: "We're processing it, your profile will be updated soon!",
Component: NotifierComponents.Alert,
});
setStatus(statusEnum.PROCESSING);
completeCallback();
})
.uploadProgress((written, total) => {
console.log('uploaded', written / total);
})
.catch(err => {
Notifier.showNotification({
title: 'There was an error uploading the video',
description: err.toString(),
Component: NotifierComponents.Alert,
componentProps: {
alertType: 'error',
},
});
setStatus(statusEnum.FAILED);
completeCallback();
});
有什么想法吗?
这里已经回答了这个问题:https://github.com/joltup/rn-fetch-blob/issues/670#issuecomment-696016355
基本上我不得不交换 then
和 uploadProgress
回调。