Hardhat 的配置文件 hardhat.config.js(或 .ts)是项目的核心配置文件,主要包含以下配置项:
基础配置:
- solidity 编译器配置
javascriptsolidity: { version: "0.8.19", settings: { optimizer: { enabled: true, runs: 200 } } }
- 网络配置
javascriptnetworks: { hardhat: { chainId: 31337 }, sepolia: { url: process.env.SEPOLIA_RPC_URL, accounts: [process.env.PRIVATE_KEY] }, mainnet: { url: process.env.MAINNET_RPC_URL, accounts: [process.env.PRIVATE_KEY] } }
- 路径配置
javascriptpaths: { sources: "./contracts", tests: "./test", cache: "./cache", artifacts: "./artifacts" }
高级配置:
- 插件配置
javascriptrequire("@nomicfoundation/hardhat-toolbox"); require("@nomiclabs/hardhat-etherscan");
- Etherscan 验证配置
javascriptetherscan: { apiKey: process.env.ETHERSCAN_API_KEY }
- Gas 报告配置
javascriptgasReporter: { enabled: true, currency: "USD" }
最佳实践:
- 使用环境变量存储敏感信息
- 为不同环境(开发、测试、生产)配置不同网络
- 启用编译器优化以减少 Gas 消耗
- 使用 TypeScript 配置文件获得类型安全
- 合理设置 optimizer runs 参数