Reputation: 1029
I am trying to implement routing for my app which is built with react and redux. I have wrapped in so that route handlers can get access to the store.But somehow my routing logic is not working.
This piece of code was working fine
export default class Root extends Component {
render() {
return (
<Provider store={this.props.store}>
<div>
<App />
</div>
</Provider>
);
}
}
export default class Root extends Component {
render() {
return (
<Provider store={this.props.store}>
<div>
<Router>
<Route path="/" component={App} />
</Router>
</div>
</Provider>
);
}
}
I am trying to figure out what I am doing wrong. Any help will be appreciated.
Upvotes: 1
Views: 80
Reputation: 10350
I am assuming your project is browser based project. So , you can make use of <BrowserRouter>
if your website/app is hosted on a dynamic server.
You can wrap it like :
import {BrowserRouter, Route} from 'react-router-dom';
export default class Root extends Component {
render() {
return (
<Provider store={this.props.store}>
<div>
<BrowserRouter>
<Route path="/" component={App} />
<BrowserRouter>
</div>
</Provider>
);
}
}
if your web is backed by static server make use of <HashRouter>
You can read more Here
Upvotes: 3
Reputation: 33544
I think you're supposed to use one of the higher level router components like BrowserRouter. See if this works:
return (
<Provider store={this.props.store}>
<div>
<BrowserRouter>
<Route path="/" component={App} />
</BrowserRouter>
</div>
</Provider>
);
Upvotes: 2