React Native API处理的最佳实践

时间:2017-06-13 11:17:21

标签: networking react-native fetch

过去几个月我一直在研究React Native平台,我需要实现一种可靠的方式来处理我的API调用。目前我正在使用redux来管理satate更改。显然,如果没有可用的网络,刷新oAuth令牌等,请求者必须重试几次。

我发现了三种解决方案:

  1. 实现一个“manager”类并处理其中的所有逻辑。我喜欢这个但我不知道是否可以将非组件连接到redux,因为它们没有州。

  2. 实现一些redux操作(request,onResponse,onError ...),这应该可以解决这个问题。

  3. 创建单独的redux操作,每次调用都有自己的提取,而不是集中组件。

  4. 我应该采用什么解决方案?

    我遇到的另一个问题是,如果发生网络错误,即使我再次调用请求并且我不再能够在调用方法中编程行为,也会解析承诺。任何解决方法?

    感谢您的时间。

3 个答案:

答案 0 :(得分:1)

用于api处理。你可以有一个文件,它将具有所有功能(导出)和所需的其他设置,因此你只需要导入所需的方法。

您可以将入门套件用于基本结构的react-native,例如:https://github.com/futurice/pepperoni-app-kit

它提供了我们新项目设置所需的大部分内容。

答案 1 :(得分:1)

按照以下教程中提到的模式(下面的youtube链接)

https://www.youtube.com/watch?v=9mlwjZL3Fmw

当在react-native中跟踪redux时,每个人都使用此模式进行API调用。

教程非常好,它是一个很棒的视频。

答案 2 :(得分:1)

Redux有两个功能强大的库,可用于异步API调用。这些允许您在应用程序的后台处理重试,错误和缓慢的API调用,只需通过侦听特定操作即可。

Redux-thunk或Redux-saga是您可能想要使用的,因此您不必完成管理组件如何处理API调用的所有工作。强烈建议你检查这些 - 有很多教程描述如何使用这些模块。手动执行此操作并非IMO的最佳实践。

相关问题