RNFetchBlob 需要主队列设置

Posted

技术标签:

【中文标题】RNFetchBlob 需要主队列设置【英文标题】:RNFetchBlob requires main queue setup 【发布时间】:2018-07-15 06:16:21 【问题描述】:

将 RNFetchBlob 与 React Native 一起使用时,我收到一个黄色警告屏幕,上面写着:

模块 RNFetchBlob 需要设置主队列,因为它会覆盖 constantsToExport 但没有实现 requiresMainQueueSetup。在 未来版本 React Native 将默认初始化所有原生 后台线程上的模块,除非明确选择退出。

我正在使用 react-native 0.56.0 和 react-native-fetch-blob: 0.10.8。这以前适用于 react-native 0.54.2。

这个错误到底告诉我什么?究竟什么是主队列设置?我应该怎么做才能解决这个问题?谢谢!

【问题讨论】:

相关但不完全回答您的问题:***.com/q/50929930/2315280 【参考方案1】:

原来react-native-fetch-blob 不再受支持,我需要改用rn-fetch-blob。要解决此问题,我必须执行以下操作:

    react-native unlink react-native-fetch-blob npm 卸载 --save react-native-fetch-blob npm install --save rn-fetch-blob react-native 链接

然后我不得不更改所有使用的行:

import RNFetchBlob from 'react-native-fetch-blob';

到:

import RNFetchBlob from 'rn-fetch-blob';

现在一切都在按应有的方式工作。

【讨论】:

这应该是公认的答案。对于 ios,请不要在 iOS 文件夹中运行 pod install 才能正常工作。【参考方案2】:

如果你使用的是react native 0.63.3,将react-native-fetch-blob替换为rn-fetch-blob后就没有link命令,所以别忘了在ios目录下执行pod install

【讨论】:

这应该是现代 RN 的最新答案。

以上是关于RNFetchBlob 需要主队列设置的主要内容,如果未能解决你的问题,请参考以下文章

同步,异步,串行队列,并发队列,全局队列,主队列等概念的总结

多上下文麻烦。无法在 Core Data 中创建两个队列(主队列和私有队列)保存数据

我们是不是需要在主线程或主队列中更新 UI?

保存父 NSManagedObjectContext 时出错

如何处理主队列上的多个 moc

本地主机上的 Django/Celery 多个队列 - 路由不起作用