为了账号安全,请及时绑定邮箱和手机立即绑定

applyMiddleware(thunkMiddleware)(createStore)(reducers)连续3个括号什么意思?

/ 猿问

applyMiddleware(thunkMiddleware)(createStore)(reducers)连续3个括号什么意思?

Heymanfk 2018-02-23 09:47:53

redux创建store

第一种:

const store = createStore(reducers, applyMiddleware(thunkMiddleware));

第二种:

const store = applyMiddleware(thunkMiddleware)(createStore)(reducers);

两种写法达成的效果一样。

第一种很好理解,第二种看不明白,有没有大佬解释一下?

查看完整描述

1 回答

?
stone310

不知道是否已经解决这个问题

调用方式:`createStroe(reducer,preloadedState,enhancer)` 

其中`applyMiddleware(...middlewares)`也就是参数enhancer,

在createStore源码里,当enhancer有值时,调用方式如下:    

`enhancer(createStore)(reducer, preloadedState)`,也就变成了:    

`applyMiddleware(...middlewares)(createStore)(reducer,preloadedState)` 


查看完整回答
反对 回复 2018-07-05

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信