构建客户端 api 以集成到 React 项目中

Building client api for integration within a react project

我想知道构建 API 客户端并将该客户端集成到我的 React 项目中的最有效方法是什么。

问题是:

1 我是否只需要使用 fetch 或 await/sync 开发一个基本客户端 api? 2 与 redux 耦合,使用 reducer,任何方法或最佳实践? 3 根据环境

访问环境变量以设置API_URL

使用的工具:目前为 react-scripts。

1 Do i need to just develop a basic client api using fetch or await/sync ?

是的。使用您选择的 http 框架。 JQuery、fetch、axios 等等。我不会详细介绍这个,因为它很容易产生意见并且不会有任何建设性。

2 Coupling with redux, using reducers, any method or best practices ?

有相当多的 redux 中间件用于处理 API 调用(或更普遍的异步操作)。 redux-thunk is one of most widely used and easiest to understand and it can also be used to inject your API into you action creators. redux-saga 是另一个不错的选择,但比 thunk 更复杂。

3 Accessing env varibale for setting API_URL depending on environnement

这不是我的强项,所以会有更好的方法来做到这一点,但我使用了一个单独的脚本("configuration.js" 通常),它有一个模板化变量,我将其替换为 env启动前变量的值,并在 html 中使用 script 标记将 link 赋给它。您的部署方式可能会使这更容易或更难。我通常会部署一个 docker 容器,因此 运行 一些额外的启动命令并不困难。