Este es mi código:
const [defaultBuy, setDefaultBuy] = useState({ data: '', price: 0 }) const changeBuyPrice = (e: any) => { let value = e.target.value if (value > 1000) { value = 9000 } console.log(value) setDefaultBuy({...defaultBuy, price: value}) }Y este es el render:
<input defaultValue={defaultBuy.price} name="" type="text" onChange={(e) => changeBuyPrice(e)} /> Si pongo un número mayor que 1000 en la entrada, console.log(value) me muestra 9000 .
Pero la etiqueta <input> no muestra 9000 .
Quiero cambiar el valor de <input> también
Si desea que la entrada refleje el valor en el estado, debe convertirlo en un componente controlado .
Asigne el valor en el estado a la propiedad de value en lugar de la propiedad defaultValue .