我在我的 React 项目中使用了 redux。我已经像那张图片一样拆分了我的文件夹:我商店的文件夹结构
但是我的文件夹ActionCreators 文件在我开发项目时增长了很多。这是文件的结尾,我知道它很糟糕。所以我决定将我在 folderActionCreator 中的功能拆分为文件夹和文件。但我无法决定我该怎么做?
我对这个问题提出了一个想法,但我不确定那是正确的方法。
我想将 folderActionCreators 中的每个函数都分离到每个需要的组件的组件级别。例如:
我有一个名为FolderItem 的组件,这个组件位于 FolderItem 文件夹内。这是例子
我想在 FolderItem 内创建另一个文件夹,名称为actionCreators并将动作创建器功能移到此处,FolderItem需要。在这种情况下,FolderItem组件使用六个动作创建器,您可以在此处查看功能,我想将它们全部移动到FolderItem文件夹中并从那里导入它们。
所以我的问题是,这是一种不好的做法吗?如果是这样,我应该如何组织我的 actionCreators?
官方建议(可能适合您也可能不适合您)是将属于一个“功能切片”文件的减速器、选择器和动作创建器放在该功能的组件文件旁边的“功能文件夹”中:Redux 样式指南: 使用单文件逻辑将文件结构化为特征文件夹
显然,有时您的操作可能并不真正只属于一个减速器或功能 - 您可以将那些具有“最”属于它们的功能的操作放置,或者根据需要将它们分开。
有关该文件结构的示例,您还可以通过调用npx create-react-app my-app --template redux
或查看官方 Redux“Create React App”模板提供的文件结构npx create-react-app my-app --template redux-typescript
此外,这种方法与官方 redux 工具包提供的createSlice
功能很相配,该功能(其中包括消除手动编写不可变更新的需要)会自动为您声明的“case reducers”创建动作创建器。
一般来说,我强烈建议您研究现代Redux,也许可以阅读官方Redux“essentials”教程,该教程展示了如何在实践中使用现代 Redux。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句