React Redux Error: Действия должны быть простыми объектами.Использовать пользовательское промежуточное ПО для асинхронных действий - PullRequest
0 голосов
/ 05 марта 2019

Я экспериментирую с новым Reaction-router-v4 с Redux и наткнулся на следующую ошибку: «Действия должны быть простыми объектами. Используйте пользовательское промежуточное ПО для асинхронных действий.»

store.js:

export const history = createHistory();
const enhancers = [];
const middleware = [
  thunk,
  routerMiddleware(history)
]
if (process.env.NODE_ENV === "development") {
  const devToolsExtension = window.__REDUX_DEVTOOLS_EXTENSION__;
  if (typeof devToolsExtension === "function") {
    enhancers.push(devToolsExtension())
  }
}
const composedEnhancers = compose(
  applyMiddleware(...middleware),
  ...enhancers
)
const store = createStore(
  rootReducer(history),
  initialState,
  composedEnhancers
)
export default store;

Действие:

export function loadAllDataSuccess(data) {
  return {
    type: types.LOAD_DATA_SUCCESS,
    data
  }
}

// thunk
export function loadAllData() {
  return function(dispatch) {
    return getData().then((data) => {
      dispatch(loadAllDataSuccess(data));
    });
  };
}

index.js:

store.dispatch(loadAllData());

ReactDOM.render((
    <Provider store={store}>
        <ConnectedRouter history={history}>
            <App />
        </ConnectedRouter>
    </Provider>
), document.getElementById('root'));

Мой браузер Chrome указывает, что ошибка связана с историей ConnectedRouter = {history}.

Я следил за некоторыми онлайн-руководствами, и теперь я совершенно не понимаю, как его запустить

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...