React + Redux App:通过 Redux 操作调用 API 与直接调用 API

Abh*_*ddy 6 reactjs redux redux-thunk react-redux

我正在开发一个 React+Redux 应用程序。我通过 Redux 操作调用 API 并将响应数据存储在 Redux 状态中。但有一种情况,我不必将 API 响应数据存储在 Redux 存储中。

所以问题是,是否有任何有效的理由通过 Redux 操作调用 API,或者我应该直接调用 API,因为我没有将响应数据存储在 Redux 存储中?

Ign*_*cio 5

这取决于您想要拨打什么样的电话以及关心的对象是谁。
以下是一些案例:

  • 这是跟踪某事的单向调用吗?您可以触发一个在middleware. 这是发送分析的一个很好的例子。这不必存储在 Redux 的存储中。

  • 这是应用程序的其他部分需要此数据的调用吗?那么这是在 Redux 中进行更新的一个很好的用例,Store以便其他组件在读取此内容并使用 props 来决定渲染什么等。

  • 这是一次仅涉及一个组件或孤立部分的调用吗?您可以在组件内部进行此调用,componentDidMount因为这与其他任何人无关

或者看看Sagas,它们观察所有被调度的操作并决定如何以干净的方式处理它们。