reactjs - 将事件转换为 Redux 操作
问题描述
目前,我正在开发一个项目,使用事件来更新侦听这些事件的其他组件,并尝试将这些事件转换为 Redux 操作。
例如,当用户登录时,组件会监听此事件并调用 API 来更新其状态,事件是根据组件是否存在而触发的,因此使用 Redux 我必须检查道具是否在组件使用componentWillupdate
并从那里我调用 API。
我需要知道这是否是做类似事情的最佳解决方案,还是我可以使用另一个插件?
解决方案
我会将删除发出/监听事件模式的代码重构为更接近 Redux 架构的代码。
发出事件的组件应该调用动作创建者。这些动作创建者可以调用 REST API 或执行其他异步操作(例如使用redux-thunk)并生成零个、一个或多个动作来更新 Redux 的状态。
另一方面,监听事件的组件必须接收来自 Redux 状态的新数据并相应地更新。一个简单的组件应该在它的 props 改变时改变它的行为,换句话说,当它的状态改变时。在这种情况下,组件的状态是存储在 Redux 中的数据子集,并在调度新操作时由 reducer 更新。
推荐阅读
- image - 生成 1 位深度的 BMP 图像
- javascript - JS:测试元素的存在和标记名称作为一个衬垫
- javascript - 如何使用 map() 从 JSON 数组中选择相邻值?
- java - Java中的双链表
- python-3.x - 无法在 aws ses 中设置 X-SES-CONFIGURATION-SET 标头
- python - 通过 bat 文件运行 Python 脚本时找不到导入的模块
- r - 根据唯一 ID 列汇总数据
- wordpress - -Wordpress 插件 - 正确包含没有 wp_enqueue_scripts 的 js 文件的方法
- flutter - Flutter 在等待 gps 数据的同时发送 post 请求
- powershell - CosmosDB 模拟器 - 使用一些脚本创建/删除数据库和容器