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申请

}

},

};

相关推荐
熊猫钓鱼>_>2 小时前
普通用户视角的端侧智能体验手记【鸿蒙心迹】
开发语言·人工智能·华为·智能手机·性能优化·ai编程·harmonyos
瑞雪兆丰年兮3 小时前
JavaWeb-day13-SpringBootWeb事务管理&AOP
java·开发语言·springboot·javaweb·事务·web·aop
布莱克6054 小时前
Swift 常量详解:从 let 到编译期优化
服务器·开发语言·ssh·swift·常量·let
布莱克6054 小时前
Swift 可选类型(Optionals)详解:从原理到实战
开发语言·安全·ssh·swift·optional·可选类型
笑容掩饰我的失落5 小时前
区块链从小白到精通(八):从零实现一个标准 ERC-20 代币(完整可运行代码)
算法·区块链·php·智能合约·哈希算法
瑞雪兆丰年兮7 小时前
JavaWeb-day14-SpringBootWeb原理篇
java·开发语言·spring boot·spring·bean·mybatis·javaweb
SomeOtherTime8 小时前
Rust生命周期介绍(AI回答)
开发语言·后端·rust
程序猿打工仔8 小时前
计算机基础(C语言)考编、专技岗
c语言·开发语言·算法
喵本喵叁肆9 小时前
Rényi 差分隐私:把隐私损失看成一族矩(英文原题:Rényi Differential Privacy (CSF 2017))
开发语言·r语言
Hvitur10 小时前
Java - Lambda
java·开发语言·python