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

标签 javascript reactjs redux react-redux reducers

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

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

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

表格组件看起来像:

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

<SearchBar/>只是一个输入,其值会影响 <Table/> 中数据的显示

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

最佳答案

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

您将有一个应用程序 reducer ,您可以在其中组合子 reducer 。 Redux 使用以下命令为您处理此问题:https://redux.js.org/docs/api/combineReducers.html

这里是你如何初始化 app reducer:

enter image description here

这是应用 reducer 文件:

enter image description here

关于javascript - 在复杂的 React 应用程序中正确使用 Redux 存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48207962/

相关文章:

javascript - 如何使用一个代码库在线和离线访问 HTML5/JS 应用程序中的数据库?

javascript - 从 2 个数组中选择随机整数,直到条件为真

reactjs - React 组件中的排序

javascript - 使用与 Angular react

javascript - Jest css-modules SyntaxError : Unexpected token

javascript - Redux:如何基于其他状态创建状态?

javascript - ReCaptcha 2 只能运行一次

javascript - 如何将 Uint8Array 转换为 javascript 中的 float ?

typescript - 如何在带有 TypeScript 的 redux 应用程序中使用选择器?

javascript - Redux,使用调度并且不要变异..除了有时?