市值: $2.6065T 1.56%
成交额(24h): $68.1613B 6.30%
恐惧与贪婪指数:

35 - 恐惧

  • 市值: $2.6065T 1.56%
  • 成交额(24h): $68.1613B 6.30%
  • 恐惧与贪婪指数:
  • 市值: $2.6065T 1.56%
加密货币
话题
百科
资讯
加密话题
视频
热门加密百科

选择语种

选择语种

选择货币

加密货币
话题
百科
资讯
加密话题
视频

如何部署NFT智能合约? (安全帽和混音教程)

Set up Hardhat, write an ERC-721 NFT contract with OpenZeppelin, test locally, then deploy to Sepolia via script or Remix—ensuring proper URI handling and ownership control.

2026/02/23 12:20

设置开发环境

1. 安装 Node.js 和 npm 以确保与 Hardhat 工具链和依赖管理的兼容性。

2. 在空项目目录中运行npm install --save-dev Hardhat以初始化 Hardhat 工作区。

3. 执行npx Hardhat init并选择示例项目选项以生成样板文件,包括合同、脚本和测试文件夹。

4. 使用 Sepolia 或 Mumbai 等网络端点配置Hardhat.config.js以进行测试网部署。

5. 通过npm install @openzeppelin/contracts安装 OpenZeppelin 合约,以利用经过审计的 ERC-721 实施。

编写 NFT 合约

1. 创建继承ERC721和Ownable的contracts/MyNFT.sol ,用于所有权控制。

2.定义公共_baseTokenURI字符串以支持通过IPFS或中心化服务器动态元数据解析。

3. 实现一个铸造函数,该函数检查调用者授权并使用_safeMint分配连续的令牌 ID。

4. 添加仅限合约所有者使用的setBaseURI函数,以允许部署后 URI 更新。

5. 包括supportsInterface重写,以完全符合ERC-721标准接口检测要求。

本地编译和测试

1. 使用npxhardhatcompile在artifacts/文件夹中生成ABI和字节码工件。

2. 在test/MyNFT.test.js中编写测试脚本,验证铸造逻辑、所有权转移和 URI 一致性。

3. 使用npx Hardhat 节点启动本地以太坊节点来模拟区块链行为,无需外部依赖。

4. 使用npx hardhat test运行测试并确认所有断言均通过,然后再继续部署。

5. 通过检查编译输出并与 EVM 版本限制进行比较,验证合约字节码是否与预期操作码匹配。

通过 Hardhat 脚本进行部署

1. 创建script/deploy.js ,导入合约工件并初始化部署参数,例如名称、符号和基本 URI。

2. 在部署脚本中使用await ethers.getContractFactory('MyNFT')实例化合约工厂。

3. 使用构造函数参数调用deploy() ,并等待所选网络上的交易确认。

4. 记录部署的合约地址并验证其在成功挖矿后出现在 Etherscan 上。

5. 将地址存储在 JSON 文件或环境变量中,以供后续交互脚本或前端集成使用。

通过 Remix IDE 进行部署

1. 导航到remix.ethereum.org并创建一个名为MyNFT.sol的新 Solidity 文件。

2. 粘贴 Hardhat 中使用的相同合约代码,确保编译器版本与Hardhat.config.js中指定的版本匹配。

3. 选择Injected Provider - MetaMask作为环境并连接到 Sepolia 或其他支持的测试网。

4. 在交易弹出窗口中确认构造函数参数和 Gas 估算后,单击“部署” 。

5. 在 MetaMask 中确认收据,并使用交易哈希在相应的区块浏览器上验证合约创建。

常见问题解答

问:我可以在不拥有 ETH 的情况下部署 ERC-721 合约吗?答:不需要。每次部署都会消耗以 ETH 支付的 Gas。在像 Sepolia 这样的网络上部署之前,必须从水龙头获取测试网 ETH。

问:为什么我的铸币功能恢复为“ERC721:转移到零地址”?答:当_safeMint收到零地址作为收件人时,就会发生这种情况。确保调用者传递有效的非零以太坊地址。

问:铸造后是否可以更改代币 URI?答:是的,如果合约包含从可变基本 URI 读取并附加令牌 ID 的tokenURI覆盖。一旦发布到 IPFS,元数据本身就保持不变。

问:如果我在铸造之前忘记调用_setBaseURI会发生什么?答:令牌将使用默认的空字符串解析 URI,从而导致元数据损坏或无法访问,除非稍后通过仅限所有者的 setter 进行更新。

免责声明:info@kdj.com

所提供的信息并非交易建议。根据本文提供的信息进行的任何投资,kdj.com不承担任何责任。加密货币具有高波动性,强烈建议您深入研究后,谨慎投资!

如您认为本网站上使用的内容侵犯了您的版权,请立即联系我们(info@kdj.com),我们将及时删除。

相关百科

NFT项目在公开铸币之前如何评估?

NFT项目在公开铸币之前如何评估?

2026-10-16 23:19:39

Bitcoin 减半机制1. Bitcoin 的协议强制规定 2100 万枚代币的固定供应上限,并通过区块奖励引入新单位。 2. 每 210,000 个区块(大约每四年),区块奖励就会减少一半,这个过程称为减半。 3. 最近一次减半发生在 2024 年 4 月,每个区块的奖励从 6.25 BTC 减...

如何追踪拥有最活跃买家的 NFT 市场?

如何追踪拥有最活跃买家的 NFT 市场?

2026-10-17 13:39:44

Bitcoin 减半机制1. 每产生 210,000 个区块,Bitcoin 个矿工的区块奖励减半。 2. 此事件大约每四年发生一次,并被硬编码到 Bitcoin 协议中。 3. 最近一次减半将每个区块的奖励从 6.25 BTC 减少到 3.125 BTC。 4、每次减半后供应通胀大幅下降,发行时间...

如何寻找NFT空投并检查其资格?

如何寻找NFT空投并检查其资格?

2026-10-17 01:20:28

市场波动模式1. 自2021年以来,Bitcoin超过68%的交易日在24小时窗口内价格波动超过15%。 2. 在流动性较低的时期,尤其是在 02:00 至 06:00 UTC 期间,以太坊表现出比 Bitcoin 更高的日内波动性。 3. 稳定币脱钩事件(例如 2023 年 3 月的 USDC 事...

如何判断NFT赠品是真是假?

如何判断NFT赠品是真是假?

2026-10-30 01:00:04

市场波动模式1. 自2021年以来,Bitcoin超过68%的交易日在24小时窗口内价格波动超过15%。 2. 在流动性较低的时期,尤其是在 02:00 至 06:00 UTC 期间,以太坊表现出比 Bitcoin 更高的日内波动性。 3. 稳定币脱钩事件(例如 2023 年 3 月的 USDC 事...

如何找到免费的 NFT 铸币并避免隐藏费用?

如何找到免费的 NFT 铸币并避免隐藏费用?

2026-10-17 14:19:42

了解免费 NFT 薄荷糖1.免费铸币是指用户无需在市场上直接支付购买价格即可领取NFT的过程。 2. 这些铸币厂通常需要与部署在以太坊、Base、Arbitrum、Optimism 或 Polygon 网络上的智能合约进行交互。 3.“免费”一词并不意味着零成本——链上交易执行过程中几乎总是涉及天然...

如何在以太坊和Polygon之间转移NFT?

如何在以太坊和Polygon之间转移NFT?

2026-10-29 03:00:13

了解跨链 NFT 传输机制1. NFT 是存在于特定区块链上的不可替代代币,如果没有中间协议,则无法在本地跨链移动。 2.以太坊和Polygon作为独立的执行环境运行,具有不同的状态根、共识机制和天然气定价模型。 3. 将 ERC-721 代币从以太坊主网直接转移到 Polygon 需要桥接基础设施...

NFT项目在公开铸币之前如何评估?

NFT项目在公开铸币之前如何评估?

2026-10-16 23:19:39

Bitcoin 减半机制1. Bitcoin 的协议强制规定 2100 万枚代币的固定供应上限,并通过区块奖励引入新单位。 2. 每 210,000 个区块(大约每四年),区块奖励就会减少一半,这个过程称为减半。 3. 最近一次减半发生在 2024 年 4 月,每个区块的奖励从 6.25 BTC 减...

如何追踪拥有最活跃买家的 NFT 市场?

如何追踪拥有最活跃买家的 NFT 市场?

2026-10-17 13:39:44

Bitcoin 减半机制1. 每产生 210,000 个区块,Bitcoin 个矿工的区块奖励减半。 2. 此事件大约每四年发生一次,并被硬编码到 Bitcoin 协议中。 3. 最近一次减半将每个区块的奖励从 6.25 BTC 减少到 3.125 BTC。 4、每次减半后供应通胀大幅下降,发行时间...

如何寻找NFT空投并检查其资格?

如何寻找NFT空投并检查其资格?

2026-10-17 01:20:28

市场波动模式1. 自2021年以来,Bitcoin超过68%的交易日在24小时窗口内价格波动超过15%。 2. 在流动性较低的时期,尤其是在 02:00 至 06:00 UTC 期间,以太坊表现出比 Bitcoin 更高的日内波动性。 3. 稳定币脱钩事件(例如 2023 年 3 月的 USDC 事...

如何判断NFT赠品是真是假?

如何判断NFT赠品是真是假?

2026-10-30 01:00:04

市场波动模式1. 自2021年以来,Bitcoin超过68%的交易日在24小时窗口内价格波动超过15%。 2. 在流动性较低的时期,尤其是在 02:00 至 06:00 UTC 期间,以太坊表现出比 Bitcoin 更高的日内波动性。 3. 稳定币脱钩事件(例如 2023 年 3 月的 USDC 事...

如何找到免费的 NFT 铸币并避免隐藏费用?

如何找到免费的 NFT 铸币并避免隐藏费用?

2026-10-17 14:19:42

了解免费 NFT 薄荷糖1.免费铸币是指用户无需在市场上直接支付购买价格即可领取NFT的过程。 2. 这些铸币厂通常需要与部署在以太坊、Base、Arbitrum、Optimism 或 Polygon 网络上的智能合约进行交互。 3.“免费”一词并不意味着零成本——链上交易执行过程中几乎总是涉及天然...

如何在以太坊和Polygon之间转移NFT?

如何在以太坊和Polygon之间转移NFT?

2026-10-29 03:00:13

了解跨链 NFT 传输机制1. NFT 是存在于特定区块链上的不可替代代币,如果没有中间协议,则无法在本地跨链移动。 2.以太坊和Polygon作为独立的执行环境运行,具有不同的状态根、共识机制和天然气定价模型。 3. 将 ERC-721 代币从以太坊主网直接转移到 Polygon 需要桥接基础设施...

查看所有文章

User not found or password invalid

Your input is correct