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

172
Vistas
Los objetos no son válidos como un niño React (nuevamente)

Sé que hay un montón de las mismas preguntas, pero realmente no entiendo cómo abordar esto de manera diferente a esto. Realmente necesito una matriz de objetos para estar dentro de un mapa, hice una matriz para mapearlo pero necesito encontrar información diferente para mostrar, así que hice una búsqueda en una matriz de objetos dentro del mapa. ¿De qué otra forma puedo hacer esto que no sea con objetos?

tengo una matriz:

 itemInfoObjTemp = ["lst_price", "qty_available", "qty_availible_diff"]

y tengo una matriz de objetos:

 itemInfoObjTemp2 = Array [ Object { "field_description": "Javna cijena", "id": 2089, "name": "lst_price", }, Object { "field_description": "Fizička zaliha", "id": 3774, "name": "qty_available", }, Object { "field_description": "Reserved Qty", "id": 10970, "name": "qty_availible_diff", }, ]

y estoy tratando de mostrar field_description como etiqueta, pero obtengo:

Los objetos no son válidos como hijos de React (encontrado: objeto con claves {id, field_description, name}). Si tenía la intención de representar una colección de niños, use una matriz en su lugar.

 {itemInfoObjTemp.map((item, index) => ( <Text key={index}> <Text style={{ fontWeight: 'bold' }}> {itemInfoObjTemp2.find(item2 => item2.name === item ? item2.field_description : item )} : </Text>{' '} {itemInfoObj[item].toString()} </Text> ))}

toda esta información es dinámica desde la API, incluidas las propiedades de los objetos, por lo que no es posible codificar.

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

0

Consulte los documentos de find() aquí .

Afirman que "devuelve el primer elemento de la matriz proporcionada que satisface la función de prueba proporcionada". Esto significa que cuando llamas a find() , estás recibiendo un objeto de vuelta.

En su lugar, prueba algo como:

 <Text style={{ fontWeight: 'bold' }}> {itemInfoObjTemp2.find(item2 => item2.name === item)?.field_description} </Text>
about 4 years ago · Juan Pablo Isaza Denunciar

0

Así que lo resolví con el índice:

 {itemInfoObjTemp.map((item, index) => ( <Text key={index}> <Text style={{ fontWeight: 'bold' }}> {itemInfoObjTemp2[index].field_description}: </Text>{' '} {itemInfoObj[item].toString()} </Text> ))}

Pero esto es ridículo. Esto solo funcionará si las matrices tienen la misma longitud y están en el orden correcto. En mi caso por suerte siempre lo harán, pero realmente debería tener otras opciones más seguras...

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