Redux工具包中的单独文件以进行操作?

问题描述 投票:0回答:1

我最近发现了关于redux工具包的问题,​​并且对如何使用它处理动作和缩减器分离有一些疑问。在使用redux工具包之前,我有单独的文件夹和文件用于化简和操作,但是在redux工具包教程的所有示例中,它们都将其操作/ thunk与化简/切片保存在同一文件中。我将需要使用axios和createAsyncThunk(我假设)来访问我的API。还是最好将动作和减速器分开在单独的文件夹/文件中?仅使用createAsyncThunk和createReducer而不是createSlice会更好吗?在createSlice中,我仍然不完全了解extraReducers的用途以及它与reducer之间的区别。如果对这个库更熟悉的人可以提供帮助,我将不胜感激。

redux redux-thunk redux-toolkit
1个回答
0
投票

我最近也开始使用Redux工具包,我认为它绝对是太棒了,它通过处理大量样板来真正加快反应/ redux开发,并遵循以规范化方式组织状态的最佳实践。您可以通过npx create-react-app my-app --template redux

轻松启动和运行

要回答您的问题,您无需将reducer和action分开,它们现在可以放在同一文件中。

我一直在使用createSlice来制作我的简化器,createAsyncThunk来调用API,并且createEntityAdapter来创建所有选择器(取决于我已经开始使用normalizr的标准化状态了]

对我最大的帮助是逐步遵循了中级教程Intermediate Tutorial。在这里,典型的react-redux应用程序将转换为Redux Toolkit样式,您将看到原始的样式缩减器,操作等,以及如何将其转换为使用新的API /样式。在清理部分clean up section的末尾:

我们现在有许多不再使用的动作和减速器文件 被使用,所以我们应该删除那些来清理项目。 [.........] 通过将所有组件文件移到匹配的功能文件夹中,我们也可以尝试完全从“按类型的文件夹”结构切换到“功能文件夹”结构。

© www.soinside.com 2019 - 2024. All rights reserved.