Context not being passed through redux connect()
<p><strong>Edit:</strong> I was able to have the connected Child update on context change with the suggestion in the Redux troubleshooting of setting <code>{ pure: false }</code> however I needed to add this to all of the connected Components that are parents of the Child I want to be update. Seems odd and inefficient to have to do this to a lot of components.</p>

<hr>

<p>First of all, I will describe what my desired end result is before diving into what I think the problem is.</p>

<p>I am wanting to access the params of <a href="https://github.com/reactjs/react-router" rel="nofollow noreferrer">react router</a> from within a grandchild component of my <strong>Route component</strong>. There are several references that say it is not necessary to sync the current route with the store if you are not using <a href="https://github.com/reactjs/react-router-redux#react-router-redux" rel="nofollow noreferrer">"recording, persisting, and replaying user actions, using time travel"</a> so I have avoided it so far. Dan Abramov states <a href="https://stackoverflow.com/questions/36722584/how-to-sync-redux-state-and-url-hash-tag-params/36749963#36749963">here</a> that it is okay to keep them un-synced and to just use the route as the source of truth.</p>

<p>Similar questions that didn't have answers to my problems:
<a href="https://stackoverflow.com/a/36633892/2300773">https://stackoverflow.com/a/36633892/2300773</a><br>
<a href="https://stackoverflow.com/questions/35940405/">Passing store through context with &lt;Provider&gt; not working in connect() based scenario</a></p>

<p>Since <strong>react-router</strong> does not provide the current params as context, I have opted to add the current param as a context from the <strong>Route component</strong>. I can access the context all the way down the component tree until I reach a Child that has been setup using <strong>connect()</strong>. The initial rendering of the page gives the Child the correct context. However, when the context changes, the Child does not get updated. <strong>connect()</strong> appears to be stripping away the context link.</p>

<p><strong>Is this the desired behaviour of connect()? If so, how is a component supposed to access the route params without them being synced to the store?</strong></p>

<p><a href="https://jsfiddle.net/chadfawcett/btdhbpLx/1/" rel="nofollow noreferrer">Here</a> is a JSFiddle showing a very minimal scenario where context isn't updated past the "connected" component.</p>

<p>Here is a bit of my actual code where I am sending the current route param as context from the <strong>Router component</strong> (<code>/view/:viewSlug</code>). I <strong>have</strong> tried setting the component to <code>{ pure: false }</code> in <strong>connect</strong> as described in the <a href="https://github.com/reactjs/react-redux/blob/master/docs/troubleshooting.md#my-views-arent-updating-when-something-changes-outside-of-redux" rel="nofollow noreferrer">redux troubleshooting</a> but had no luck.</p>

<h2>Parent (App) Component</h2>

<pre><code>class App extends Component {
  getChildContext() {
    const { viewSlug } = this.props

    return { viewSlug }
  }

  ...
}

App.PropTypes = {
  ...
}

App.childContextTypes = {
  viewSlug: PropTypes.string
}

...

export default connect(mapStateToProps)(App)
</code></pre>

<h2>Grandchild (Day) Container</h2>

<pre><code>import Day from '../components/Day'

const mapStateToProps = (state, ownProps) =&gt; {
  ...
}

export default connect(mapStateToProps)(Day)
</code></pre>

<h2>Grandchild (Day) Component</h2>

<pre><code>class Day extends Component {
  ...
}

Day.PropTypes = {
  ...
}

Day.contextTypes = {
  viewSlug: PropTypes.string.isRequired
}

export default Day
</code></pre>