Tengo un error No se pueden leer las propiedades de undefined (leyendo 'objetivo') para este código:
const [title, setTitle] = useState(""); const handleChangeTitle = (e) => { setTitle(e.target.value); }; useEffect(() => { handleChangeTitle() }, [title]); return ( <div className="App"> <input name="title" type="text" value={title} onChange={handleChangeTitle} /> <p>{title}</p> </div> );Elimina el useEffect por completo. useEffect es para eventos del ciclo de vida, como en el renderizado inicial. Lo que está haciendo es cuando la entrada cambia, actualiza su estado. Está bien llamar a handleChangeTitle exactamente como lo está haciendo. Sin embargo, su useEffect tiene una dependencia de la variable de título. Eso significa que cada vez que cambie, se activará cada vez que cambie el valor de esa variable.
input -> value change -> handleChangeTitle updates state "title" -> useEffect fires -> calls handleChangeTitle AGAIN -> cycle over and over until app crashesAdemás del parámetro faltante ya mencionado para handleChangeTitle, no hay nada de malo en su código. Está funcionando según lo previsto. Es simplemente defectuoso en su diseño. Sugeriría leer sobre el uso correcto de cada gancho aquí .
ya estás viendo [título] dentro de tu useEffect, cada vez que se active el evento onChange, se llamará a la función, como Szymon dijo que no tienes onChange dentro de tu useEffect