Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 在redux中调度多个操作未按预期工作_Reactjs_Redux - Fatal编程技术网

Reactjs 在redux中调度多个操作未按预期工作

Reactjs 在redux中调度多个操作未按预期工作,reactjs,redux,Reactjs,Redux,我有一个reducer,它应该在redux中分派多个动作,如下所示: const fetchSideBarData = (state, action) => { const request = action.sideBarData; console.log("KKKK"); return () => { fetchSideBarDataBegin(state); }; } 其中,fetchSideBarDataBe

我有一个reducer,它应该在redux中分派多个动作,如下所示:

const fetchSideBarData = (state, action) => {
    const request = action.sideBarData;
    console.log("KKKK");
    return () => {
        fetchSideBarDataBegin(state);
    };
}
其中,
fetchSideBarDataBegin(状态)
是一个单独的函数。当我使用:

const fetchSideBarData = (state, action) => {
    const request = action.sideBarData;
    console.log("KKKK");
    return fetchSideBarDataBegin(state);
}
它按预期工作,但我的第一个语法有什么问题,它将我的状态变为未定义状态。
我想使用第一种语法在return语句中传递多个操作。

还原程序应该是纯函数,只使用当前状态和一个操作,然后返回下一个状态。应该没有像调度其他操作那样的副作用。第一个例子是返回一个返回为void的函数,第二个例子是返回函数的结果。简单地说,你没有,执行操作不是reducer的目的。从您的UI分派操作,或者在异步操作(即Thunks)的情况下,从其他操作分派操作,或者从rxjs/redux observables/Simulate分派epics。@drewrese完全正确。Shivam:@ShivamSahil我会编辑你的问题,包括你关于微调器的评论中的信息,看看像useEffect这样的钩子,用
[]
调用,作为第二个参数,它在初始时只执行一次render@ShivamSahil也许你想对react和redux有一个坚实的理解(这似乎你不知道)不只是复制和粘贴代码-在这种情况下,我强烈建议您通读官方文档,做一些在线教程以及玩游戏,例如stackblitz,但我们现在开始: