title: React Router re-render same component
body: <p><strong>Problem:</strong></p>
  
  <p>Have async route that get param <code>movie</code> from it and return <code>Movie Container</code> (component). The problem is when I go from one <code>MovieContainer</code> to another <code>MovieContainer</code> (just same route, but with diff. params) my router unmount and re-render <code>MovieContainer</code> component. But it should just pass new props and don't touch my component lifesycle. How to solve it ? What I do wrong ?</p>
  
  <p><strong>Code:</strong></p>
  
  <p>Router</p>
  
  <pre><code>&lt;Route path="/" component={AppLayout}&gt;
    &lt;IndexRoute components={{ children: Home }} /&gt;
    &lt;Route path=":movie/about" getComponents={(nextState, callback) =&gt; {
      window.scrollTo(0, 0);
      const movie = findMovie(nextState.params.movie);
      return callback(null, { children: (router) =&gt; &lt;Movie movie={movie} router={router} /&gt; });
    }}/&gt;
    ....
  &lt;/Route&gt;
  </code></pre>
  
  <p>Component WillMount in Movie component</p>
  
  <pre><code>  componentWillMount() {
      console.log('MOUNT MovieContainer');
    }
  </code></pre>
  
  <p><strong>UPDATE:</strong>
  OK, Done some experiment. </p>
  
  <p>Replace</p>
  
  <p><code>return callback(null, { children: (router) =&gt; &lt;Movie movie={movie} router={router} /&gt; });</code></p>
  
  <p>With</p>
  
  <p><code>return callback(null, Movie);</code></p>
  
  <p>Andd <code>Movie component</code> not re-renderd. Just updated. It's great! But how to pass props now ?</p>