Redux 在状态中组织规范化数据

Redux Organizing Normalized Data in State

一直在尝试将状态管理添加到我的应用程序中,并希望对组织规范化数据的最佳实践有所澄清。

根据 Redux Docs 中的文档,一个常见的模式是在您所在州的 "entities" 下组织诸如 "authors" 和 "books" 之类的内容。

但是,我遇到的大多数示例都不符合这种模式。似乎常见的做法是将 "authors" 和 "books" 单独放置在州内,而不是 "entities".

只是希望得到一些澄清,并了解如何在 "entities" 中获取 "authors" 和 "books" 以适应示例文档的结构。

我写了整个 "Structuring Reducers" docs section,所以我要说我有资格回答:)

将所有不同的规范化数据放在 entities 键下只是一个建议。如果您更喜欢将每个项目类型放在状态树的顶部,那很好,由您决定。

我在规范化文档页面中的一些建议基于 Redux-ORM 库的组织方式。它生成一个缩减器函数,为您的不同项目类型定义所有 "tables",因此缩减器函数通常成为根缩减器中的一个切片(通常命名为 ormentities) .

有关使用 Redux-ORM 的更多信息,您可能想通读我的 "Practical Redux" tutorial series,其中展示了使用 Redux-ORM 的多种技术,并在示例应用程序中演示了它的用法。