Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/25.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.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 如何使用ES6 Promise分派多个redux存储操作?_Reactjs_Promise_Redux_Es6 Promise_Serverside Javascript - Fatal编程技术网

Reactjs 如何使用ES6 Promise分派多个redux存储操作?

Reactjs 如何使用ES6 Promise分派多个redux存储操作?,reactjs,promise,redux,es6-promise,serverside-javascript,Reactjs,Promise,Redux,Es6 Promise,Serverside Javascript,我正在尝试使用Promise API以一个序列(或者一次,实际上并不重要)分派多个redux操作,但它不起作用: Promise.all([ store.dispatch(action1()), store.dispatch(action2()), store.dispatch(action3()), store.dispatch(action4()) ]).then(() => { res.send(renderToString(<Provi

我正在尝试使用Promise API以一个序列(或者一次,实际上并不重要)分派多个redux操作,但它不起作用:

Promise.all([
    store.dispatch(action1()),
    store.dispatch(action2()),
    store.dispatch(action3()),
    store.dispatch(action4())
]).then(() => {
    res.send(renderToString(<Provider store={store}><App /></Provider>));
});
Promise.all([
store.dispatch(action1()),
store.dispatch(action2()),
store.dispatch(action3()),
store.dispatch(action4())
]).然后(()=>{
res.send(renderToString());
});
我不断得到以下错误:

未处理的PromisejectionWarning:未处理的承诺拒绝(拒绝id:2):TypeError:无法读取的属性“map” 空的


我做错了什么?

据我所知,
store.dispatch()
是同步的,所以在这里使用承诺没有意义。我不熟悉react,但根据对问题和一的回答,您的错误可能来自渲染行。我的操作本身返回承诺,我有一个中间件来创建正确的操作。我暂时解决了这个问题。我的一个还原程序有点问题。你可能想看看如何使用一些中间件,比如“Redux Thunk”,我本来会使用Thunk或saga,但我在开始这个项目时并不知道它们。客户端已经部署好,可以生产了。此时添加另一个中间件不是一个选项。因此,我将尝试找到一种解决方案,它不会以任何方式影响客户端代码。@Gasim,错误可能来自其他地方。正如你所说的,可能是你的减速器。这个问题还相关吗?