Casco

(Soportado desde Remix IDE v0.12.0 y Remixd v0.3.6)

Remixd y Hardhat

Nota: Si no ha utilizado remixd antes, lea más sobre él here

Si remixd se está ejecutando localmente en su dispositivo y la carpeta compartida es un proyecto Hardhat, un plugin websocket adicional estará escuchando en el puerto 65522. Según su documentación

Los proyectos hardhat son proyectos npm con el paquete hardhat instalado y un archivo hardhat.config.js o hardhat.config.ts..

Remixd busca el archivo hardhat.config.js o hardhat.config.ts en la carpeta compartida, y si encuentra el archivo, se ejecutará el escuchador de websocket de Hardhat.

El escuchador de websocket de Hardhat es un plugin de websocket similar a remixd y se utiliza para realizar acciones específicas de Hardhat con Remix IDE.

No necesita ninguna instalación por separado ya que se entrega con el módulo remixd NPM.

Habilitar la compilación Hardhat

Requisitos previos

Para utilizar eficazmente la compilación Hardhat con Remix IDE:

  1. Hardhat debe instalarse localmente en el sistema https://hardhat.org/getting-started/#installation

  2. La carpeta compartida debe ser un proyecto Hardhat que contenga hardhat.config.js o hardhat.config.ts.

  3. El Remixd Hardhat websocket listener debería estar ejecutándose en 65522.

Cómo utilizarlo

Si se comparte un proyecto hardhat a través de remixd y se carga el espacio de trabajo localhost en Remix IDE, aparecerá una casilla de verificación extra en el plugin Solidity Compiler con la etiqueta Enable Hardhat Compilation.

There is an info icon alongside the label which redirects to a specific section of Remix official documentation that explains how to use Hardhat compilation.

Se puede marcar la casilla Habilitar compilación Hardhat para ejecutar la compilación para Hardhat junto con el Remix utilizando la configuración del compilador en el plugin Solidity Compiler.

Al pulsar el botón Compilar, se creará un archivo con remix-compiler.config.js en la raíz del proyecto que almacenará la configuración del compilador establecida en el plugin Solidity Compiler de Remix. Se pasa a Hardhat para la compilación.

El resultado de la compilación se mostrará en el terminal del IDE Remix

y también en el terminal remixd.

Proveedor de cascos

En Hardhat, los contratos se despliegan iniciando un nodo local. Lea más sobre ello en Documentación de Hardhat

Hardhat Provider es un plugin en Remix IDE que permite a los usuarios desplegar el contrato en la red “localhost” de Hardhat. Esto puede elegirse en el desplegable ENTORNO del plugin Desplegar y ejecutar transacciones.

En cuanto seleccione Hardhat Provider, se abrirá un modal preguntándole por el Hardhat JSON-RPC Endpoint.

Si el nodo Hardhat se está ejecutando con las opciones por defecto, entonces el valor del endpoint por defecto en el modal no necesitará ningún cambio. En caso de que el host y el puerto del nodo Hardhat sean diferentes, el punto final JSON-RPC deberá actualizarse en el cuadro de texto del modal.

Una vez rellenado el punto final correcto en el modal, pulse OK y las cuentas del nodo Hardhat se cargarán en la sección ACCOUNT. También se mostrará el identificador de red.

Ahora, se puede empezar a desplegar el contrato desde Remix IDE al nodo local de Hardhat como de costumbre.

console.log en Remix IDE

(Soportado desde Remix IDE v0.17.0)

Remix IDE soporta la librería de consola hardhat mientras se utiliza Remix VM. Puede utilizarse mientras se realiza una transacción o se ejecutan pruebas unitarias.

Despliegue y ejecución de transacciones

Para probarlo, tiene que poner una sentencia import y utilizar console.log para imprimir el valor como se muestra en la imagen.

Además, una vez que ejecute el método changeOwner, el valor de la sentencia de consola se mostrará en el terminal Remix después de los detalles de la transacción como se indica a continuación:

Pruebas unitarias de Solidity

De forma similar, console.log puede utilizarse mientras se ejecutan pruebas unitarias utilizando el plugin Remix Solidity Unit Testing. Vea la imagen de abajo.

Para las pruebas que incluyan mensaje de registro, se mostrará en el Terminal Remix correspondiente al nombre de la prueba.