Я экспериментирую с новым 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}.
Я следил за некоторыми онлайн-руководствами, и теперь я совершенно не понимаю, как его запустить