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

209
Vistas
¿Cómo recorrer una matriz en react typescript?

¿Cómo puedo recorrer una matriz para mostrar el valor?

Aquí está mi siguiente código:

 ineligiblePointsTableRows() { return this.state[PointsTableType.INELIGIBLE].contracts.map(contract => { return { applied: (<input value={0} disabled className="applied-pts-input" />), reason: ( <div className="ineligible-reason-container"> <i className="fa fa-exclamation-triangle"></i> <p aria-label={contract.reason}>{contract.reason.map((reason: any, i: any) => ( <text>Hello world</text> ))}</p> </div> ), }, }; }); }

Recibí un error en la línea contract.reason.map

El objeto es posiblemente 'indefinido'.ts(2532) (parámetro) contract: ContractUsage No hay arreglos rápidos disponibles

cuando consuelo. console.log(contract.reaons) este es el valor:

 Array(2) 0: "Cannot borrow usage this far in the future." 1: "Contract has a past due balance."

Entonces, mi objetivo es que estoy tratando de recorrer contract.reason pero tengo un error como el anterior. Cómo puedo arreglar esto ?

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

0

Es un error mecanografiado que le dice que el objeto podría estar "indefinido" o, en otras palabras, podría estar vacío de cualquier valor.

Pocas formas posibles de resolver esto:

1.

 ineligiblePointsTableRows() { return this.state[PointsTableType.INELIGIBLE].contracts.map(contract => { return { applied: (<input value={0} disabled className="applied-pts-input" />), reason: ( <div className="ineligible-reason-container"> <i className="fa fa-exclamation-triangle"></i> <p aria-label={contract?.reason}>{contract?.reason?.map((reason: any, i: any) => ( <text>Hello world</text> ))}</p> </div> ), }, }; }); }
 ineligiblePointsTableRows() { return this.state[PointsTableType.INELIGIBLE].contracts.map(contract => { return { applied: (<input value={0} disabled className="applied-pts-input" />), reason: ( <div className="ineligible-reason-container"> <i className="fa fa-exclamation-triangle"></i> {contract !== undefined && <p aria-label={contract.reason}>{contract.reason.map((reason: any, i: any) => ( <text>Hello world</text> ))}</p>} </div> ), }, }; }); }
about 4 years ago · Juan Pablo Isaza Denunciar

0

Significa que su contract o motivo de contract.reason posiblemente no está definido. Para evitar el error, use optional chaining como este:

contract?.reason?.map

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