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

165
Vistas
ejecución de casco con parámetros

Necesito ejecutar un script ts en particular usando hardhat desde la línea de comando pero necesito especificar parámetros... Similar a esto:

 npx hardhat run --network rinkeby scripts/task-executor.ts param1 param2

Donde --network rinkeby es el parámetro para la ejecución del casco
Y param1 y param2 son parámetros para el script task-executor.ts .
No pude encontrar ninguna publicación sobre este problema y no puedo hacer que funcione.

También intenté definir una tarea de hardhat y agregué esos parámetros, pero si trato de ejecutarla, obtengo:

 Error HH9: Error while loading Hardhat's configuration. You probably tried to import the "hardhat" module from your config or a file imported from it. This is not possible, as Hardhat can't be initialized while its config is being defined.

Porque necesito importar hre o ethers desde hardhat en esa tarea en particular.

¿Alguien sabe cómo lograr lo que necesito?

¡¡Muchas gracias!!

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

0

Según Hardhat :

Los scripts de Hardhat son útiles para cosas simples que no toman argumentos del usuario y para la integración con herramientas externas que no son adecuadas para la CLI de Hardhat, como un depurador de Node.js.

Para los scripts que requieren parámetros, debe usar Hardhat Tasks .

Puede codificar la tarea en un archivo diferente a hardhat.config.ts . Aquí hay una tarea de ejemplo que usa parámetros posicionales en el archivo sampleTask.ts :

 import { task } from "hardhat/config"; task("sampleTask", "A sample task with params") .addPositionalParam("param1") .addPositionalParam("param2") .setAction(async (taskArgs) => { console.log(taskArgs); });

Recuerde importarlo dentro de hardhat.config.ts :

 import "./tasks/sampleTask";

Luego ejecútalo con:

 npx hardhat sampleTask hello world

Y debería imprimir:

 { param1: 'hello', param2: 'world' }

Puede leer más sobre los parámetros con nombre, posicionales y opcionales en las tareas aquí .

Si necesita usar hre o ethers , puede obtener hre del segundo parámetro de la función setAction :

 task("sampleTask", "A sample task with params") .addPositionalParam("param1") .addPositionalParam("param2") .setAction(async (taskArgs, hre) => { const ethers = hre.ethers; });
about 4 years ago · Juan Pablo Isaza Denunciar

0

Por lo general, funciona así:

 const hre = require('hardhat'); const { ethers } = hre;
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