在复杂的 React 应用程序中正确使用 Redux 存储

Correct usage of Redux store in a complex React app

看了文档,整理了一些小例子,但还是想不通如何在组件多的应用中使用Redux。如何为 reducer 和操作组织文件结构,我应该为每个组件创建一个 reducer,还是只为主要应用程序组件创建一个 reducer,我是否需要整个应用程序的商店初始状态?

例如我有一个应用程序(伪代码):

<App>
    <Table data={someData}>
</App>

Table 组件看起来像:

<Table>
    <SearchBar value={searchString}>
</Table>

<SearchBar/> 只是一个输入,其值会影响 <Table/>

中数据的显示

那么在这种情况下使用 Redux 的最佳实践是什么?

这在很大程度上取决于开发人员来构建源代码。就我而言,我通过将所有 reducer 放在一个文件中来开始小型项目。但是当我开始处理更大的项目时,我觉得为每个组件使用单独的 reducer 更容易维护和重用。所以每个组件都有自己的 reducer、actions、actionTypes、selectors、styles 文件。

你会有一个应用程序减速器,你可以在其中组合子减速器。 Redux 使用:https://redux.js.org/docs/api/combineReducers.html

为您处理此问题

以下是初始化应用减速器的方法:

这是应用减速器文件: