reactjs - 远程登录redux reducer?
问题描述
export default async (state = INITIAL_STATE, action) => {
switch (action.type) {
//... Many other cases
CASE 'A':
CASE 'B':
CASE 'C':
CASE 'D':
CASE 'E':
{
//call http request for logging purpose
return { ...state, isLoadingFlag: true };
}
//Yes there is default case
}
}
我有上面的减速器是isLoadingFlag
真的。我想知道是哪一个遇到了这种情况,所以我要做的是,在reducer
. 但很奇怪,它实际上搞砸了状态?因为我再也看不到我的加载标志了。
我不明白为什么会发生这种情况,因为所有 reducer 关心都返回一个状态对象,从理论上讲,即使我们在其中添加远程网络请求,它也应该可以工作,不是吗?
额外的信息:
上述设置的原因是因为我的 mac 在 adb 模式下无法检测到华为手机,所以我无法在特定设备上执行调试。
解决方案
我认为您必须async
从函数初始化中删除,因为减速器必须同步。在你的情况下,reducer 返回一个 Promise 因为async
.
推荐阅读
- java - 如何在同一个 Java Stream 上同时调用 takeWhile 和 dropWhile
- python - Python Strip 不删除字符
- tensorflow - 使用多个 GPU 的 TensorFlow 训练速度
- python - “Python 3.9”和“Python 3.9 (venv)”解释器有什么区别?
- php - preg_match_all 用于特殊字符 [?]
- vuejs3 - Vue 3 为 svgPanZoom 加载脚本,但未定义函数
- python - 在 Python 中按顺序导入和插入单词
- html - 多选项表单不显示
- java - vaadin(14.4.4)应用程序:无法确定开发模式的项目目录...在部署之前生成“flow-build-info.json”
- android - 如何开始为图像捕获创建自定义相机意图?