reactjs - Redux Reducer 上的一个大动作或两个小动作
问题描述
我在我的 react-native 项目中使用redux。我必须使用一些 Switch 组件(true 或 false)来选择不同的颜色并将它们保存到 state 中的数组中。根据我的开关选择,我可以有一个空数组或例如 ["black","white"]。
我的问题是是否有一个名为“EDIT_COLOR”的操作并在其中包含一个“IF”语句来检查我是否正在从数组中添加或删除颜色,或者有两个操作一个用于添加,另一个用于删除。
第一个优点是只将一个动作传递给组件,但减速器在内部使用 IF 语句会变得更大一些。
非常感谢您的评论!
解决方案
只要操作是可管理的,就创建一个 reducer。但是,如果操作功能不相关,那么您应该为每个操作创建单独的减速器。例如,为用户身份验证和从 API 获取数据创建不同的 reducer。
推荐阅读
- c++ - c++ STL 中的生成器函数、谓词、操作等等?
- python - 如何使用 Python 使用正则表达式在字符串中搜索/查找特殊字符,如 &、< 或 >
- excel - 范围+单个值的Excel验证列表
- javascript - 在 iOS 上使用 Chrome 不会触发图像 onLoad 事件
- scikit-learn - 使用 pytorch 和 sklearn 对 MNIST 数据集进行交叉验证
- javascript - 如何使用 JS 将请求的结果放入 json 文件中
- java - 使用java将复选框数据从html表单插入到sql
- linux - 传递给 bash 脚本的环境变量在函数内部为空
- javascript - 如何点击子元素
- eloquent - 获取在 Laravel 中评论票证的用户的不同电子邮件