const [title,setTitle] = useState(""); const titleHandler=e => { setTitle(e.target.value) console.log(title) }
¿Por qué este código registra el valor antiguo del título y no el nuevo? Soy nuevo en js y reacciono, por favor, ¿alguien puede explicarme esto?
sucedió porque cuando llamas a setTitle
no actualiza el estado instantáneamente, pero activa una nueva representación del componente con el estado actualizado
si lo haces
const [title,setTitle] = useState(""); const titleHandler=e => { setTitle(e.target.value) console.log('updating title') } useEffect(() => { console.log('title updated', title) }, [title])
Puedes verlo por ti mismo