title: Obejct.assign not accepted in <Route> render callback (by TypeScript)
body: <p>Actually I have two questions for a <code>&lt;Route&gt;</code> like this in an <em>jsx</em> file:</p>
  <pre><code>&lt;Route path={`${path}/some/thing`} render={(props) =&gt; (&lt;MyComponent {Object.assign({}, props)} groups={groups} user={user} /&gt;)} /&gt;
  </code></pre>
  <h2>Why adding <em>props</em> at all?</h2>
  <p>In examples like <a href="https://stackoverflow.com/a/62542221/2092322">this it</a> should look like <code>&lt;MyComponent {...props} user={user} /&gt;</code>
  But we can also see variants like <a href="https://reacttraining.com/blog/react-router-v5-1/#useparams" rel="nofollow noreferrer">this</a>: <code>render={({ match }) =&gt; &lt;BlogPost match={match} /&gt;}</code></p>
  <p>Do we need the spread operator part <code>{...props}</code>, when the component uses multiple parameters?</p>
  <h2>Why is <em>...</em> expected by Typescript?</h2>
  <p>For my code on top I am getting a TypeScript error at <em>Object</em>:</p>
  <pre><code>'...' expected.ts(1005)
  </code></pre>
  <p>Is there any way to use <code>Object.assign</code>, because the spread operator for objects is not supported by Safari 9?</p>