我应该在我的 React-Redux 项目中使用 Component 文件夹级别的 actionCreators 吗?



我在React项目中使用redux。我把我的文件夹拆分了,如图所示:我的商店的文件夹结构

但是我的文件夹ActionCreators文件在我开发这个项目的时候增长了。这是文件的结尾,我知道它很可怕。所以我决定将folderActionCreator中的函数拆分为文件夹和文件。但我无法决定该怎么做?

我已经为那个问题想出了一个主意,但我不确定那是正确的方法。

我想将folderActionCreators中的每个函数分离到每个所需组件的组件级别。示例:

我有一个名为FolderItem的组件,该组件位于FolderItem文件夹中。这是的例子

我想在FolderItem中创建另一个名为actionCreators的文件夹,并将FolderItem需要的操作创建者函数移到此处。在这种情况下,FolderItem组件使用六个操作创建者。您可以在这里查看函数,我想将所有函数移到

olderItem所以我的问题是,这是一种不好的做法吗?如果是,我应该如何组织我的actionCreators?

官方建议(可能对您有用,也可能不适用(将归并器、选择器和动作创建者放在一起;特征切片";文件,在该特征的组件文件旁边;特征文件夹":Redux样式指南:使用单一文件逻辑将文件结构为功能文件夹

显然,有时你会有一些动作,这些动作可能并不真正只属于一个减速器或功能——你可以把那些具有属于它们的功能的动作放在";最多";,或者你想怎么分开就怎么分开。

对于该文件结构的示例,您还可以查看官方Redux";创建React应用程序";通过调用模板npx create-react-app my-app --template reduxnpx create-react-app my-app --template redux-typescript

此外,这种方法与官方redux工具包提供的createSlice功能配合得很好,该功能(除其他外,比如不需要手动编写不可变的更新(自动为您创建"的动作创建者;壳体减速器";你声明。

一般来说,我强烈建议你研究一下现代redux,也许可以浏览官方的redux"必需品";演示如何在实践中使用现代Redux的教程。

最新更新