【问题标题】:Should every async call response be stored in the redux store?每个异步调用响应都应该存储在 redux 存储中吗?
【发布时间】:2020-01-14 10:11:32
【问题描述】:

在 react-redux 中进行异步调用的推荐模式是什么。我知道我的每个组件都可以独立调用 API 并将数据存储在本地状态,但是 redux 存储有什么用呢?只是为了存储组件之间共享的数据?将所有响应存储在 redux 存储中的缺点是什么,反之亦然。谢谢!

【问题讨论】:

    标签: reactjs redux


    【解决方案1】:

    redux 存储用于维护可由组件使用的全局状态。

    一般经验法则是,如果您的数据不被多个组件使用或仅用于 FLUX 模式,您可以在特定容器组件中维护状态。设置 redux 操作有很多样板,因此请始终考虑权衡取舍以及是否真的需要完成所有额外工作。

    在此处阅读 Dan Abramov 的 Container/Presentational: https://medium.com/@dan_abramov/smart-and-dumb-components-7ca2f9a7c7d0

    编辑:Dan Abramov 不再是容器展示架构的支持者。

    【讨论】:

      【解决方案2】:

      是的,差不多。如果您只在一个组件中需要它,请不要将网络调用发送到您的 redux 商店。否则,您最终会将大量组件连接到商店,这会降低应用程序的性能。

      【讨论】:

        猜你喜欢
        • 2017-07-15
        • 2016-05-21
        • 2017-11-17
        • 2010-11-24
        • 2021-03-17
        • 1970-01-01
        • 2016-12-14
        • 1970-01-01
        • 2017-10-22
        相关资源
        最近更新 更多