Redux中间件在reducer之后被调用

Gia*_*los 3 reactjs redux react-redux redux-middleware

我创建了一个这样的中间件:

export default store => next => action => {
    const res = next(action)

    console.log("Middleware", action.type)

    return res
} 
Run Code Online (Sandbox Code Playgroud)

我的商店配置是:

import { createBrowserHistory } from 'history';
import { applyMiddleware, compose, createStore } from 'redux';
import { routerMiddleware } from 'connected-react-router';
import middleware from './middleware'

import rootReducer from './reducers';

export const history = createBrowserHistory();

const defaultState = {};

const composeEnhancers =
  typeof window === 'object' &&
  window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ?   
    window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({
    }) : compose;

const enhancer = composeEnhancers(
  applyMiddleware(middleware, routerMiddleware(history)),
);

export const store = createStore(
  rootReducer(history),
  defaultState,
  enhancer
);

Run Code Online (Sandbox Code Playgroud)

我还有一个减速器,我在日志和调试器中看到首先调用减速器,然后调用中间件。对我配置错误有什么建议吗?

Woj*_*nus 7

如果我没记错的话,当您调用时,会调用减速器next(action)。将你的移到console.log上面,这应该会给你你想要的日志顺序。