如何设计Redux存储和操作?

时间:2016-03-25 22:21:43

标签: reactjs redux

ReactJS和Redux提供了一个新的范例,就开发应用程序的前端而言。两者都有相对简单的API,从技术角度来看,花一点时间后很容易掌握。但从设计角度来看,我一直无法找到有关最佳做法或陷阱的建议。

在哪里可以找到有关如何设计全球Redux商店的建议或建议?将应用程序的整个状态保存在全局存储中似乎很快就会变得难以处理。这样做我一定要避免什么?那些改变全球状态的行为呢?根据动作数据或更具体的动作制作更少可以执行不同操作的动作是否更好?

1 个答案:

答案 0 :(得分:8)

这是一个很好的问题,但要切实回答是有点困难的,因为很多问题都是"它取决于"题。 但是,我强烈建议您深入了解redux.js.org文档。那里有许多关于塑造API或减少重复或一般笨重的建议的一点点智慧。

此外,我还添加了一些常规提示:

  • 你通常不会像你想象的那样频繁地 状态。所以有些东西可以通过更多的道具和更少的商店驱动状态来实现
  • 将事物分组为更大的主题"通常可以帮助商店层面的数据组织;因此,您可以在商店中为给定用户提供更高级别的属性,auth以及任何其他"主题"会以同样的方式分组。
  • 有时,您可能会创建稍微冗长的状态结构,但权衡是可预测性和更高的整体简单性。仍然是对MVC或双向疯狂的胜利
  • 最后,作为一个小问题,"全球"国家并不是真的必须如此全球化。从某种意义上说,单个状态树意味着所有的状态都是全局的" (或者至少是统一的),但除非你将商店暴露给每一个组件,否则它并不是真正的全球性。精心分离的组件将使人们更容易思考从顶部更容易上传的数据IMO,如果有意义,那么事情就不必是全球性的。

希望有所帮助!

另见: