繁体   English   中英

如何在Redux中间件中调度动作?

[英]how to dispatch a action in redux middleware?

我写了一个中间件,就像吹牛一样:

const testMiddleware = ({ dispatch, getState }) => next => action => {
    console.log('test middleware')
};

export default testMiddleware;

并将其添加到我的商店: applyMiddleware(testMiddleware)曾经使用过,我在控制台中获得了test middleware

我写了一个简单的动作,像这样:

export const sayHi = () => {
    return dispatch => {
        console.log('hi');
    }
}

如何在中间件中调度sayHi动作?

中间件将商店的getState()和dispatch()函数作为第一个参数,因此您可以执行以下操作(在导入所需的操作之后):

const middleware = ({dispatch, getState }) =>{
    return next => action => {
        dispatch(someAction);
        // return data;
        return next(action);
  }
}

因此,中间件签名是({getState,dispatch})=> next => action。

https://redux.js.org/api/applymiddleware

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM