javascript - 使用 redux 进行组织 API 调用的更好实践是什么?

标签 javascript reactjs redux structure

使用 redux 进行组织 API 调用的更好实践/便捷实现是什么?我

我有

  • 来自 API 的一些数据,我存储在 redux 中。我还存储 API 的 token 在redux中

  • 来自 API 的数据,我不需要将其存储在 redux 中

  • 需要 token 的 API 调用

  • 不需要 token 的 API 调用

  • API 调用不需要 token ,我不需要在 redux 中存储响应

所以主要问题是。即使我不需要在 redux 中存储响应,但对于其中的某些我需要来自 redux 的 token ,我是否应该对 API 调用使用操作?

或者仅对我将存储在 redux 中的响应使用 API 操作。 对于其他东西,例如创建自定义钩子(Hook),我将从 redux 获取 token 并从中进行调用

我也尝试了这两种变体,但我无法决定哪一种更好。并阅读了一些关于此的评论,但他们是 50/50。

最佳答案

对我来说,我会说这取决于您想要在应用程序中共享哪些信息。这是我的想法:

  1. 如果您的响应在应用程序中共享,那么将它们置于 redux 状态是有意义的,否则您无需通过操作进行调用。如果您将 API 响应置于 redux 状态,那么最好先将它们标准化。 (https://blog.brainsandbeards.com/advanced-redux-patterns-normalisation-6b9a5aa46e1f)
  2. 在 Redux 中拥有 token 是可以的,但很快您可能会考虑让一个管理器来管理 token ,而不是放入 Redux 存储中,因为您将需要对 token 进行其他操作,例如更新新 token 和验证。通过这种方法,您可以在任何地方访问 token 。
  3. 您可以创建自己的Request类来为需要或不需要 token 的API设置默认身份验证

关于javascript - 使用 redux 进行组织 API 调用的更好实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59065718/

相关文章:

javascript - Animate.css 和音频

Javascript 将字符串变量作为数组访问

javascript - React onClick setState 然后运行函数

reactjs - Electron + ReactJS + Material-UI 渲染故障

javascript - 为什么我得到 "Type ' String[] | undefined' 不是数组类型。”对于我的对象变量?

reactjs - 带有验证的表单组件是否仍然是展示性的?或者我应该把它做成一个容器?

javascript - 在 redux 形式的字段 onchange 上触发操作创建者

javascript - 避免在 React 中的每个渲染上重新计算变量

javascript - Firebase 检查值是否为空

javascript - WebGL 无法初始化着色器程序