title: type="number" react typescript false positive in onChange?
body: <p>I got error in line 24 </p>
  
  <blockquote>
    <p>Argument of type 'string' is not assignable to parameter of type
    'SetStateAction'.ts(2345)</p>
  </blockquote>
  
  <p>using typescript for a react experiment.</p>
  
  <pre><code>const App: React.FC = () =&gt; {
    const [name, setName] = React.useState&lt;string&gt;(null);
    const [tel, setTel] = React.useState&lt;number | undefined&gt;(null);
  
    return (
      &lt;div&gt;
        &lt;input
          value={name}
          type="text"
          placeholder="name"
          onChange={e =&gt; setName(e.target.value)}
        /&gt;
        &lt;input
          value={tel}
          type="number"
          placeholder="tel."
          onChange={e =&gt; setTel(e.target.value)} // here?
        /&gt;
      &lt;/div&gt;
    );
  };
  </code></pre>
  
  <p><a href="https://codesandbox.io/s/silly-moore-wve1p" rel="nofollow noreferrer">https://codesandbox.io/s/silly-moore-wve1p</a></p>
  
  <p>It doesn't happens with type="text" I've already specify the type, it's strange.</p>