Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

69
Vistas
Enviar información del formulario a otro componente

Diseñé una tarjeta flash y quiero cambiar el texto de la tarjeta cuando hago clic en el botón, pero no sé cómo enviar la información del formulario al componente de la aplicación para actualizar el estado. componente de la aplicación

 function App() { const [flashCard, setFlashCard] = useState({ word: "test", persianEquivalent: "test", }); const setFlashCardHandler = (e) => { setFlashCard({ flashCard: e }); }; return ( <div className="container"> <Form setFlashCard={setFlashCardHandler} /> <FlashCard flashCard={flashCard} /> </div> ); } export default App;

Componente de formulario:

 function Form({ setFlashCard }) { const [valueEn, setValueEn] = useState(); const [valuePer, setValuePer] = useState(); const setValueHandlerEn = (e) => { setValueEn(e.target.value); }; const setValueHandlerPer = (e) => { setValuePer(e.target.value); }; const setFlashCardHandler = (e) => { e.preventDefault(); setFlashCard((e)=>{valueEn=e.target[0].value}); }; return ( <form onSubmit={setFlashCardHandler}> <input id="word-input" placeholder="world" value={valueEn} onChange={setValueHandlerEn} /> <input id="persian-equivalent-input" placeholder="Equivalent" value={valuePer} onChange={setValueHandlerPer} /> <button id="submit-btn">send</button> </form> ); } export default Form;
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Hay un problema con la forma de establecer los valores.

  1. Pase setFlashCard como accesorio a Form
 <Form setFlashCard={setFlashCard} />
  1. En Formulario, cambie setFlashCardHandler como se muestra a continuación.
 const setFlashCardHandler = (e) => { e.preventDefault(); setFlashCard({ word: valueEn, persianEquivalent: valuePer }); };
  1. Establezca una cadena vacía ( "" ) como estado predeterminado para evitar enviar undefined .
 const [valueEn, setValueEn] = useState(""); const [valuePer, setValuePer] = useState("");

Editar proud-water-2xz9y

about 4 years ago · Juan Pablo Isaza Denunciar

0

Agregue nuevos accesorios updateFlashCard al componente.

Me gusta:

 <Form updateFlashCard={(e) => setFlashCard(e)}/>

Y cambie el valor en el estado updateFlashCard del componente de formulario

Me gusta:

 function Form({ updateFlashCard }) { const [valueEn, setValueEn] = useState(); const [valuePer, setValuePer] = useState(); const setValueHandlerEn = (e) => { setValueEn(e.target.value); }; const setValueHandlerPer = (e) => { setValuePer(e.target.value); }; const setFlashCardHandler = (e) => { e.preventDefault(); updateFlashCard(e.target[0].value) // update from here }; return ( <form onSubmit={setFlashCardHandler}> <input id="word-input" placeholder="world" value={valueEn} onChange={setValueHandlerEn} /> <input id="persian-equivalent-input" placeholder="Equivalent" value={valuePer} onChange={setValueHandlerPer} /> <button id="submit-btn">send</button> </form> ); } export default Form;
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda