-
Установка Hardhat:
Прежде чем мы углубимся в настройку, давайте убедимся, что Hardhat установлен в вашей системе. Откройте терминал и выполните следующую команду:npm install --save-dev hardhat
-
Создание файла конфигурации Hardhat:
Чтобы настроить Hardhat для вашего проекта Solidity, вам необходимо создать файл конфигурации. Используйте следующую команду для создания базового файла конфигурации:npx hardhat
В корневом каталоге вашего проекта будет создан файл
hardhat.config.js
. -
Версия Solidity:
Укажите версию Solidity, которую вы хотите использовать в своем проекте, добавив объектsolidity
в файл конфигурации:module.exports = { solidity: { version: "0.8.10", }, // ... };
-
Сети.
Укажите сети, к которым вы хотите подключиться, добавив объектnetworks
в файл конфигурации. Вот пример для сети Ethereum:module.exports = { networks: { mainnet: { url: "https://mainnet.infura.io/v3/YOUR_INFURA_PROJECT_ID", accounts: [PRIVATE_KEY], }, }, // ... };
-
Компиляция контрактов.
Настройте параметры компилятора Solidity, добавив объектsettings
в файл конфигурации. Сюда входит указание настроек оптимизатора, путей вывода и т. д. Вот пример:module.exports = { solidity: { version: "0.8.10", settings: { optimizer: { enabled: true, runs: 200, }, }, }, // ... };
-
Плагины.
Расширьте функциональность Hardhat, добавив плагины в файл конфигурации. Например, чтобы включить плагин Hardhat Etherscan для проверки контрактов, сначала установите его:npm install @nomiclabs/hardhat-etherscan
Затем добавьте его в свой файл конфигурации:
module.exports = { // ... etherscan: { apiKey: "YOUR_ETHERSCAN_API_KEY", }, };
-
Настраиваемые задачи.
Защитный шлем позволяет определять настраиваемые задачи для автоматизации повторяющихся действий. Например, вы можете создать задачу для развертывания ваших контрактов в определенной сети. Вот пример:task("deploy", "Deploys the contracts") .addParam("network", "The network to deploy to") .setAction(async (taskArgs) => { const network = taskArgs.network; // Deploy contracts here });
Вы можете запустить эту задачу с помощью следующей команды:
npx hardhat deploy --network mainnet
Вот и все! Благодаря этим методам у вас будет прочная основа для настройки Hardhat для разработки Solidity. Не забудьте изучить документацию по Hardhat, чтобы узнать о более продвинутых конфигурациях и функциях.