react-redux - 如何处理多个组件更新相同的状态?
问题描述
我有一个由不同组件组成的页面,所有这些组件都依赖于相同的 redux 状态。
我应该如何处理状态的检查和更新?状态正在设置/检查用户是否已通过身份验证,如果没有,它将调用一个 API(副作用),该 API 将对 API 进行身份验证。
我不希望发生的是所有这些组件都尝试使用相同的请求集调用 API,因为它们基本上是在检查/更新相同的东西。但是这些组件取决于该状态。
在这种情况下处理状态的常见/流行方法是什么。
解决方案
您需要根据响应数据调度操作并相应地设置状态,只需在您使用此状态的所有屏幕中应用 onFocusListener 即可。每次当您移动到特定屏幕时,它都会根据新状态进行更新。
这是侦听器的示例
useEffect(() => {
const loads = props.navigation.addListener('didFocus', () => {
});
return () => {
loads
}}, [props.navigation]);
推荐阅读
- python - 如何在 Jupyter 中从 PILLOW 导入图像?
- java - 为什么打印数组列表时会在开头打印逗号?
- java - 递归中的预增量 (++i) 和 i + 1。为什么他们有不同的行动?StackOverFlow 错误
- python - 我可以在 MongoDB 的单个文档中插入列表吗?
- spring-boot - 从 Spring 工具集 4 访问 tomcat 管理页面
- sql - 根据某些条件从存储过程创建数据库
- node.js - 从多个表中续集销毁
- go - 是否有任何自动增量机制用于使用 redigo 包装器将键的值存储在 redis 中?
- clojure - Clojure“地图”功能排序保证?
- selenium-webdriver - “为了您的安全,您不能从此设备登录。” usando selenium web-drivers en GCP Compute Engine