I was able to configure it with redux by changing a few things:
First, browserHistory
is not defined on react-router
anymore. One way to get it back is to use the package history
.
You will need to install (redux optional):
npm i -S history react-router react-router-redux
Instead of trying to import browserHistory
use:
import { createBrowserHistory } from 'history';
If you want to use redux then import this and add it to your combined reducers:
import { routerReducer as routing } from 'react-router-redux';
combineReducers({
home, about,
routing, // new
});
Next you create the history
object
// redux
import { syncHistoryWithStore } from 'react-router-redux';
const history = syncHistoryWithStore(createBrowserHistory(), store);
// regular
const history = createBrowserHistory();
Then change your router to use the new history
object
<Router history={ history } children={ Routes } />
Everything else should be the same.
If anyone runs into The prop history is marked as required in Router, but its value is undefined.
It is because browserHistory
is no longer available in react-router, see post to use history package instead.
Related
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…