setState from input on change - can't delete from input
<p>I have an <code>input</code>:</p>

<pre><code> &lt;input type="text" value={this.state.current} onChange={this.handleChange.bind(this)} /&gt;
</code></pre>

<p><code>handleChange()</code> method:</p>

<pre><code>handleChange(e) {
  let val = parseInt(e.target.value); 
  if (val) {
    this.set(val);
  }
}
</code></pre>

<p>and <code>set()</code> method (simple set number between 1 and 5 to the state):</p>

<pre><code>set(val = 1) {
  if (val &lt; 1) {
    val = 1;
  }
  if (val &gt; 5) {
    val = 5;
  }
  this.setState({ current: val });
}
</code></pre>

<p>My problem is: when i want to change value in input, i can't delete number from it. I think it is auto filled from state imediatly after I delete number. Where is the problem in my code?</p>

<p>exmaple on jsFiddle: <a href="https://jsfiddle.net/4sc3p2ny/" rel="nofollow">https://jsfiddle.net/4sc3p2ny/</a></p>