hardhat 搭建智能合约







第二步完善




// 1. 引入所需包或插件(图中未提及)
require(“@nomicfoundation/hardhat-toolbox”); // 这是一组常用插件集合(测试、验证等)
/** @type import(‘hardhat/config’).HardhatUserConfig */
module.exports = {
// 2. 配置Solidity编译器(图中提及但未详解)
solidity: {
version: “0.8.20”, // 指定你的合约使用的Solidity版本,必须与代码中pragma声明匹配!
settings: {
optimizer: {
enabled: true, // 开启优化器,可以显著减少部署和执行合约所需的Gas费用
runs: 1000, // 优化程度,数值越大优化越激进,但编译时间可能越长
},
},
},
// 3. 配置网络(图中提及但未详解)
networks: {
// 本地开发网络 - Hardhat内置,无需额外设置即可使用
localhost: {
url: “http://127.0.0.1:8545”, // Hardhat本地节点的默认RPC地址
chainId: 31337, // Hardhat网络的链ID
},
// 示例:Sepolia测试网配置(连接真实区块链)
sepolia: {
url: “https://sepolia.infura.io/v3/YOUR_INFURA_PROJECT_ID”, // 你需要从Infura或Alchemy等节点服务商获取自己的URL
accounts: [process.env.PRIVATE_KEY], // 【极度重要】使用环境变量存储私钥,绝不直接写在代码里!
},
},
// 4. 其他实用配置(图中完全未提及)
// 例如:配置合约验证插件,以便在Etherscan上验证合约源码
etherscan: {
apiKey: {
sepolia: “YOUR_ETHERSCAN_API_KEY” // 需要去Etherscan申请
}
},
};


