Redux&&Flux经常不被需要?

Winter is comming!

前言

我发现很多React开发新手都假定Redux是React平台的一部分。实际上它不是。和许多开始使用React的团队一起工作,所以我相当了解他们遇到的问题。而且,人们使用React遇到的前10的问题,没有一个是使用Redux和Flux解决的。

附注:Flux是一种模式,而Redux是实现这种模式的框架。实际上,在这篇文章中我是在谈论两者。

我不是唯一一个提出此观点的人。下面是引用Pete Hunt(React 创建者之一)的一段话:

很多开发者一坐下开始开发一个应用并且定义他们的数据模型,他们认为他们需要使用Flux来做这些。这是错误的采用Flux的方法。

下面是篇博文来自 Dan Abramov,Redux的创建者,基本上说的是同样的事情。你可能不需要Redux。这是他唯一一篇保持置顶的博文。

下面一段引文来自 Ryan Florence, 一个在 React 生态系统有受人尊重的很大的成就和会议频繁发言人:

Flux 阻碍了React的创新:让所有人再次回到事件和‘模板’并且熟悉数据的改变。

目录

后台CRUD应用

有一类明确的应用,我认为不需要Redux: 传统的业务CRUD应用。我的许多客户和学生属于这一类。此类的应用有成百个页面,每一个都有他们自己的路由。但是这些页面中的大多数可以单机显示,而且主要通过数据库集成。所以当此类应用作为一个整体的时候可能会非常复杂,作为单页面的时候就不是这样复杂。不像Facebook那样复杂。

那么什么时候应该使用Redux?

如果我有更多时间,我愿意探讨究竟Redux解决了什么问题和什么场景使用它的细节。但是我愿意把它留在下篇博文中。
但是通常,当客户开始列举他们需要Redux的原因时,我经常可以告诉他们怎样使用传统的纯React并且使用更少的操作。

我的建议

等待直到你的应用组件复杂,并且你遇到一些特定的问题,而且该问题你确定可以用Redux解决,再使用Redux。

结论

总之,我会说Redux不应该被作为大多数应用的默认选择,特别是,我的学生和客户创建的大多数应用。我认为在投身于Redux之前,至少有100件事情他们应该学习。

原文地址:Redux/Flux is often (usually?) not needed

Share Comments