【发布时间】:2020-05-25 07:17:56
【问题描述】:
这是redux-thunk库的源代码:
function createThunkMiddleware(extraArgument) {
return ({ dispatch, getState }) => next => action => {
if (typeof action === 'function') {
return action(dispatch, getState, extraArgument);
}
return next(action);
};
}
const thunk = createThunkMiddleware();
thunk.withExtraArgument = createThunkMiddleware;
export default thunk;
我不明白“thunk”和“thunk.withExtraArguent”有何不同。
const thunk=createThunkMiddleware() // 这是我们用于异步请求的中间件
但是 thunk.withExtraArgument 是相同的 createThunkMiddleware 函数,但这次它只是作为参考传递。我们可以在此处传递参数,但不能将参数传递给 thunk。
有人可以解释一下区别吗?对我来说 thunk 和 thunk.withExtraArgument 是一样的
【问题讨论】:
-
您似乎已经知道其中的区别......一个是带有未定义额外参数的中间件,另一个是您自己可以调用以创建带有额外参数的此类中间件的函数。什么不清楚?
-
对不起,我不太确定这里的问题是什么
-
@DanPantry 对我来说 thunk 和 thunk.withExtraArgument 看起来一样
标签: reactjs redux axios server-side-rendering redux-thunk