Javascript 如何将参数传递到Redux中间件?

Javascript 如何将参数传递到Redux中间件?,javascript,reactjs,redux,react-redux,redux-middleware,Javascript,Reactjs,Redux,React Redux,Redux Middleware,我想将一个参数传递到自定义Redux中间件中。 但是我不知道如何在自定义中间件中使用参数 例如: import { createStore, applyMiddleware } from 'redux'; import reducers from './reducers'; const customMiddleWare = store => next => action => { // how to use argument here? }; const middlew

我想将一个参数传递到自定义Redux中间件中。 但是我不知道如何在自定义中间件中使用参数

例如:

import { createStore, applyMiddleware } from 'redux';
import reducers from './reducers';

const customMiddleWare = store => next => action => {
  // how to use argument here?
};

const middlewares = [customMiddleWare(argument)];

const store = createStore(
  reducers,
  applyMiddleware(...middlewares)
);
const middlewareWrapper = customArgument => store => next => action =>
  console.log(customArgument);
}

const middlewares = [middlewareWrapper(argument)];

const store = createStore(
  reducers,
  applyMiddleware(...middlewares)
);

由于中间件是函数,您可以创建一个包装器函数,该函数将接受您的参数并返回您的中间件函数,该函数将访问提供的参数

例如:

import { createStore, applyMiddleware } from 'redux';
import reducers from './reducers';

const customMiddleWare = store => next => action => {
  // how to use argument here?
};

const middlewares = [customMiddleWare(argument)];

const store = createStore(
  reducers,
  applyMiddleware(...middlewares)
);
const middlewareWrapper = customArgument => store => next => action =>
  console.log(customArgument);
}

const middlewares = [middlewareWrapper(argument)];

const store = createStore(
  reducers,
  applyMiddleware(...middlewares)
);

你具体想做什么?您已经在向
customMiddleWare
传递一个参数,但它不是您认为的那个参数。不确定您的实际用例是什么,但一般来说,中间件不是这样构造的。@DaveNewton您是对的,我更新了这个问题。