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

98
Vistas
Error de código de operación no válido al intentar acceder a la matriz de estructuras Solidity en Hardhat

Tengo la siguiente estructura y matriz en mi código Solidity:

 struct Character { int256 strength; uint256 dexterity; uint256 constitution; .... } Character[] public characters;

Tengo la siguiente línea en mi prueba de Hardhat intentando acceder a un miembro de esa matriz:

 const character = await contract.characters(0)

Entonces recibo el siguiente error:

 Error: VM Exception while processing transaction: invalid opcode at Contract.characters

¿Cuál es la forma correcta de acceder a un miembro de esta matriz de estructuras?

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

0

Como se señaló en el comentario de la pregunta, la matriz de characters estaba vacía cuando se llamó a la función de characters(0) .

Solidity genera automáticamente funciones getter para matrices public , lo que permite acceder a un elemento de la matriz utilizando su índice.

Cuando intenta acceder a un índice que está fuera de los límites, EVM genera una excepción.

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