Javascript 我应该在我的react应用程序中何时使用Redux?

Javascript 我应该在我的react应用程序中何时使用Redux?,javascript,reactjs,redux,Javascript,Reactjs,Redux,我正在开发一个react web应用程序,或者公司购买了一个管理仪表板来节省时间。在这个面板中,他们使用redux来处理状态,并将所有设置参数存储到redux中 但实际上,我对每个用例都使用readux感到困惑 我所有的请求和状态都是基于组件的,不是全局的,这些都不是此应用程序的其他组件所必需的 例如,要加载游戏列表,我有以下代码: componentDidMount(){ 这是我的国家({ 加载:正确 }); http.\u GET('/game/getAllGames') 。然后(响应=>

我正在开发一个react web应用程序,或者公司购买了一个管理仪表板来节省时间。在这个面板中,他们使用redux来处理状态,并将所有设置参数存储到redux中

但实际上,我对每个用例都使用readux感到困惑

我所有的请求和状态都是基于组件的,不是全局的,这些都不是此应用程序的其他组件所必需的

例如,要加载游戏列表,我有以下代码:

componentDidMount(){
这是我的国家({
加载:正确
});
http.\u GET('/game/getAllGames')
。然后(响应=>{
这是我的国家({
加载:错误
});
this.props.dispatch(gameslistation(response.data.result.games));
});

}
是的,你说得对。据我所知,redux并不适用于所有应用程序,redux或状态管理主要用于在某些操作发生时显示用户以前的状态,而不是空状态

这里有一个关于何时使用redux的详细解释

快乐编码

这本书描述得最好

一般来说,当您的数据量随着时间的推移而发生变化,您需要一个单一的真相来源,并且您发现将所有内容保持在顶级React组件状态的方法不再足够时,请使用Redux

Redux只不过是一种状态管理工具,使用它需要更多令人信服的理由: 就你而言,首先:

  • React的设置状态将随着需求的增长而不断膨胀,并且会更高 更难维护。将状态管理分离为一个减速机 很好地重构,使其更具可读性
  • 缓存组件状态,例如,如果您正在使用购物车,则使用渐进式向导。在这种情况下,在用户交互中有很多来回的操作,这些操作会导致状态的改变。现在,在redux中维护您的状态非常有意义
  • 深度嵌套的组件随着需求的增长,将状态和大量道具传递给孩子的组件迅速膨胀。这是一个包含大量包装器组件(尤其是UI细节)的经典场景。更好的方法是重构并直接将低级组件连接到redux(转换为容器。读取:)
  • 应用程序状态映射到多个容器组件。例如,如果您的getAllGames加载状态要在应用程序的某个渐进加载程序组件中表示。使用redux将减轻您在这些组件之间共享数据的痛苦
  • 在构建可能在任何地方都有交互的根级组件时非常有用。像你的用户帐户组件,模态,警报,加载器

您将意识到,您正在编写一些带有操作和减缩器的样板代码。虽然这比反应状态管理要好得多,反应状态管理可以在有状态组件中快速地逐渐变得复杂。

结论,我认为最好不要在每个项目和第一次检查或用例和项目结构中使用redux!!!如果我们想存储全局状态或缓存状态,redux是理想的,但对于简单的使用和每个组件的本地状态来说,这并不好,这是一个问题,给我们带来了复杂性。。。很好,LuckI看到了,但是当我在componentDidMount状态缓存中获取并填充redux状态时,这对我来说并不意味着……我同意。这只是不同的一般场景,在应用程序中使用redux比react提供的更有意义。如果你的大多数箱子都适合这里,那对你来说可能是个不错的选择。