When React controls an input through value, the value must be updated synchronously in response to edits. Otherwise React keeps rendering the old value.