Этот проект демонстрирует расширенный вариант использования Hardhat, интегрирующий другие инструменты, обычно используемые вместе с Hardhat в экосистеме.
Проект поставляется с образцом контракта, тестом для этого контракта, примером сценария, который развертывает этот контракт, и примером реализации задачи, в которой просто перечислены доступные учетные записи. Он также поставляется с множеством других инструментов, предварительно настроенных для работы с кодом проекта.
Попробуйте выполнить некоторые из следующих задач:
npx hardhat accounts
npx hardhat compile
npx hardhat clean
npx hardhat test
npx hardhat node
npx hardhat help
REPORT_GAS=true npx hardhat test
npx hardhat coverage
npx hardhat run scripts/deploy.ts
TS_NODE_FILES=true npx ts-node scripts/deploy.ts
npx eslint ' **/*.{js,ts} '
npx eslint ' **/*.{js,ts} ' --fix
npx prettier ' **/*.{json,sol,md} ' --check
npx prettier ' **/*.{json,sol,md} ' --write
npx solhint ' contracts/**/*.sol '
npx solhint ' contracts/**/*.sol ' --fix
Чтобы опробовать проверку Etherscan, сначала необходимо развернуть контракт в сети Ethereum, поддерживаемой Etherscan, например Ropsten.
В этом проекте скопируйте файл .env.example в файл с именем .env, а затем отредактируйте его, чтобы заполнить детали. Введите свой ключ API Etherscan, URL-адрес вашего узла Ropsten (например, из Alchemy) и закрытый ключ учетной записи, которая отправит транзакцию развертывания. Имея действительный файл .env, сначала разверните свой контракт:
hardhat run --network ropsten scripts/sample-script.ts
Затем скопируйте адрес развертывания и вставьте его вместо DEPLOYED_CONTRACT_ADDRESS
в этой команде:
npx hardhat verify --network ropsten DEPLOYED_CONTRACT_ADDRESS " Hello, Hardhat! "
Для более быстрого запуска ваших тестов и сценариев рассмотрите возможность пропустить проверку типа ts-node, установив для переменной среды TS_NODE_TRANSPILE_ONLY
значение 1
в среде hardhat. Более подробную информацию смотрите в документации.