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

162
Vistas
La promesa del método Web3 .send() permanece <pendiente>

Estoy trabajando en un DAPP que se conecta a un contrato inteligente a través de Web3 y MetaMask. Estoy llamando a un método de reclamo en el contrato de la siguiente manera:

 try { const claimRes = await batchClaimTokenRewards(tokensArray, weeksArray); console.log('claim response: ', claimRes); this.getNftDataFromContract(); } catch(error) { console.log('claim error: ', error); }

La función batchClaimTokenRewards se importa de otro archivo, aquí también está esa función:

 export async function batchClaimTokenRewards(tokensArray:string[], weeksArray:string[]) { return distributionContract.methods.batchClaimTokenRewards(tokensArray, [weeksArray]).send({from: web3.utils.toChecksumAddress('<metamask address>')}); }

Según tengo entendido, el método .send() invocado en la instancia del contrato debería devolver una promesa, que debería poder await , sin embargo, la línea en la que estoy tratando de claimRes nunca se alcanza, incluso como muestra MetaMask la transacción como completada. La expresión catch() nunca se alcanza tampoco. Cuando registro ClaimRes sin usar await en la promesa, obtengo una promesa <pending> en la consola de Chrome que permanece en el estado <pending> y nunca se resuelve, nuevamente, incluso cuando MetaMask informa que la transacción se completó. ¿Qué puedo hacer para obtener de manera confiable la confirmación de una transacción completada?

about 4 years ago · Juan Pablo Isaza
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