— введение
— Выполнение скриптов с помощью Hardhat CLI
— Автономные скрипты: использование Hardhat в качестве библиотеки
— Аргументы Hardhat
— hardhat Учебники , hardhat 教程
— Контакт 联系方式
— введение
В этом руководстве мы рассмотрим шаги по созданию скрипта с помощью Hardhat. Для общего обзора использования Hardhat обратитесь к руководству «Начало работы».
Вы можете писать собственные пользовательские сценарии, которые могут использовать все функциональные возможности Hardhat. Классическим примером является написание скрипта развертывания для ваших смарт-контрактов.
Существует два способа написания сценария, который обращается к среде выполнения Hardhat.
— Запуск скриптов с помощью Hardhat CLI
Вы можете писать сценарии, которые обращаются к свойствам среды выполнения Hardhat как к глобальным переменным.
Эти сценарии должны быть запущены через Hardhat: npx hardhat run script.js
.
Это облегчает перенос скриптов, которые были разработаны для других инструментов и которые вводят переменные в глобальное состояние.
— Отдельные сценарии: использование Hardhat в качестве библиотеки
Второй вариант использует архитектуру Hardhat для обеспечения большей гибкости. Hardhat был разработан как библиотека, что позволяет вам проявить творческий подход и создать автономные инструменты CLI, которые получают доступ к вашей среде разработки. Это означает, что достаточно просто потребовать:
const hre = require("hardhat");
вы можете получить доступ ко всем вашим задачам и плагинам. Чтобы запустить эти скрипты, достаточно зайти через node: node script.js
.
Чтобы опробовать это, давайте посмотрим на свежий проект Hardhat. Запустите npx hardhat
и пройдите шаги по созданию проекта JavaScript. Когда вы закончите, каталог вашего проекта должен выглядеть следующим образом:
$ ls -l
total 400
-rw-r--r-- 1 fzeoli staff 195 Jul 30 15:27 hardhat.config.js
drwxr-xr-x 3 fzeoli staff 96 Jul 30 15:27 contracts
drwxr-xr-x 502 fzeoli staff 16064 Jul 30 15:31 node_modules
-rw-r--r-- 1 fzeoli staff 194953 Jul 30 15:31 package-lock.json
-rw-r--r-- 1 fzeoli staff 365 Jul 30 15:31 package.json
drwxr-xr-x 3 fzeoli staff 96 Jul 30 15:27 scripts
drwxr-xr-x 3 fzeoli staff 96 Jul 30 15:27 test
Внутри scripts/
вы найдете deploy.js
. Прочитайте его комментарии, чтобы лучше понять, что он делает.
<<< @/../packages/hardhat-core/sample-projects/javascript/scripts/deploy.js
Теперь запустите скрипт:
$ node scripts/deploy.js
Lock with 1 ETH deployed to: 0x5FbDB2315678afecb367f032d93F642f64180aa3
Получив доступ к Hardhat Runtime Environment в верхней части, вы можете запустить сценарий в автономном режиме.
Hardhat всегда запускает задачу компиляции, когда она вызывается через npx hardhat run
, но в автономном режиме вы можете захотеть вызвать компиляцию вручную, чтобы убедиться, что все скомпилировано. Это можно сделать, вызвав hre.run("compile")
. Добавьте следующую строку в начало функции main
и повторно запустите скрипт с помощью node:
await hre.run("compile");
$ node scripts/deploy.js
Nothing to compile
Lock with 1 ETH deployed to: 0x5FbDB2315678afecb367f032d93F642f64180aa3
— Аргументы Hardhat
Вы все еще можете передавать аргументы Hardhat при запуске автономного сценария. Это делается путем установки переменных среды. К ним относятся:
-
HARDHAT_NETWORK
: Устанавливает сеть для подключения. -
HARDHAT_SHOW_STACK_TRACES
: Включает трассировку ожидаемых ошибок JavaScript. -
HARDHAT_VERBOSE
: Включает ведение подробного журнала Hardhat. -
HARDHAT_MAX_MEMORY
: Устанавливает максимальный объем памяти, который может использовать Hardhat.
Например, вместо команды npx hardhat --network localhost run script.js
, вы можете сделать HARDHAT_NETWORK=localhost node script.js
.
— hardhat Tutorials , hardhat 教程
CN 中文 Github hardhat 教程 : github.com/565ee/hardhat_CN
CN 中文 CSDN hardhat 教程 : blog.csdn.net/wx468116118
EN 英文 Github hardhat Tutorials : github.com/565ee/hardhat_EN
— Контакт 联系方式
Домашняя страница : 565.ee
GitHub : github.com/565ee
Электронная почта : 565.eee@gmail.com
Facebook : facebook.com/565.ee
Twitter : twitter.com/565_eee
Telegram : t.me/ee_565