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

246
Vistas
Reaccionar: la fila de tabla adicional se imprime incorrectamente

Estoy recorriendo una serie de objetos, luego, según una condición, muestro esa fila en una Tabla u otra. Sin embargo, cuando llamo a esa condición, el objeto reacciona como me gustaría (se muestra en la Tabla 1), pero en la Tabla 2 también se imprime un número. El siguiente es un ejemplo de fragmento. los archivos contienen una matriz de objetos, persona . Si la persona es masculina , se agregan a una matriz y esa matriz se pasa a un componente separado y se representa en otro lugar. Esto funciona. Si la persona no es hombre, se devuelven en la tabla debajo de la condición.

 <tbody> {props.files.map(person=> ( <div> {(person.gender === "male") ? maleArray.push(person) : <tr> <td>{person.name}</td> <td>{person.age}</td> </tr> } </div> ))} </tbody>

El problema es que cada vez que se detecta un macho, no se muestra en la tabla de hembras, sino que se imprime un número en su lugar. Por ejemplo,

Nombre Años
María 51
1
jane 19

La tabla masculina funciona como se esperaba, pero si se detecta un macho en el bucle, obtengo esta salida en la tabla femenina.

EDITAR: la tabla se está imprimiendo de forma extraña en la versión final. Se vería algo como esto
Nombre Edad
María 51
1
Juana 19

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

En JSX, usa el operador ternario, SIEMPRE devuelve el valor cuando finaliza la ejecución, y ese valor devuelto se pasa a un marcado. Entonces, cuando un ciclo se ejecuta en la tabla "femenina", junto con los nombres femeninos, muestra el resultado del método de inserción de ejecución en una matriz en lugar de los nombres masculinos, que es una longitud de matriz, es por eso que ve números enteros en una tabla. Intente separar los nombres masculinos y femeninos en un componente, no en JSX, y luego no hay necesidad de poner una condición en JSX

about 4 years ago · Juan Pablo Isaza Denunciar

0

Array.Map realiza una acción en cada elemento de la matriz y toma el valor devuelto.

maleArray.push(person) devuelve 1 si tiene éxito, por lo que se representa 1 en lugar de los valores.

Podría crear una matriz masculina y una femenina dentro de un forEach-loop y mapear esas matrices en su lugar.

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