Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

187
Views
La entrada de reacción pierde el foco en onChange

Estoy creando una aplicación React y necesito una tabla donde cada fila contenga una entrada. Para eso, estoy usando Material-UI y Formik, pero tengo un error que cada vez que escribo algo en una de las entradas, pierdo el foco de esa entrada. Vi este error mucho en Internet, probé agregando claves, eliminando claves, usé defaultValue en lugar de value, y todo funcionó correctamente para mí.

He creado un codesandbox para esto: https://codesandbox.io/s/gracious-robinson-i69v3?file=/src/App.js

Si alguien pudiera ayudarme, se lo agradecería mucho, estoy atascado con estos problemas durante unos días.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Cada vez que sus componentes MyInput se vuelven a representar, la clave cambia porque no es determinista (usa Math.random() ). Debido a esto, React eliminará el nodo DOM existente e insertará un nuevo nodo DOM en su lugar. Su navegador ahora piensa que es otro elemento, por lo que no pone el foco en ese elemento.

about 4 years ago · Juan Pablo Isaza Report

0

No tiene que establecer la propiedad key en cada componente. Solo es necesario donde genera una matriz de elementos, por ejemplo, cuando usa map . Entonces, en su ejemplo, solo el componente Formik necesita tener la propiedad clave establecida, porque es el padre de los otros componentes dentro del ciclo.

 {companies.map((company, index) => ( <Formik key={index} initialValues={{ contact_name: company.contact_name || "", contact_email: company.contact_email || "" }} onSubmit={(values) => { console.log(values); }} > {(formik) => ( ...
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!