Question: I'm using [react-router-redux](https://github.com/reactjs/react-router-redux) for navigation and have nested `connect()`ed components. This seems to work fine, except that my nested components don't re-render when the react-router route changes. 

Specificallyl, in the structure below, `App` and `Sidebar` are `connect()`ed components and they both require information from `state`. When I click a `Link` in `Sidebar`:

* a `@@router/LOCATION_CHANGE` action is firing,
* I have react-router-redux's `routerReducer` being combined into my state so the state is updating,
* App re-renders and the new route is shown,
* but Sidebar doesn't re-render so the "active" `Link` isn't updated the `activeClass` is never changed.

What could be going wrong here? 

*Router*

```
<Router component={App}>
   <Route path="foo" component={Foo}/>
   <Route path="bar" component={Bar}/>
   <Route path="baz" component={Baz}/>
</Router>

```

*App*

```
<div> 
  <Sidebar/>
  <div>
    {children}
  </div>
</div>

```

Sidebar

```
<nav>
   <Link to="/foo" activeClass="active">Foo</Link>
   <Link to="/bar" activeClass="active">Bar</Link>
   <Link to="/baz" activeClass="active">Baz</Link>
</nav>

```

Answer: 
I had this same issue (not using Redux), and it seems to be React deciding not to call render again for your sidebar even though App re-renders. I fixed it by wrapping the Sidebar in [withRouter](https://github.com/ReactTraining/react-router/blob/master/packages/react-router/docs/api/withRouter.md) which will cause Sidebar to re-render whenever your route changes. 

Something like this:

```
import {withRouter} from 'react-router'
// or 'react-router-dom' on v4.x
class Sidebar extends Component {...}
export default withRouter(Sidebar)

```
this problem is well documented at react-router's guides page <https://github.com/ReactTraining/react-router/blob/master/packages/react-router/docs/guides/blocked-updates.md#dealing-with-update-blocking>

TL;DR make sure your components are location-aware. either by using sCU or HoC