Web3系列教程之新手篇---Level 9:NFT-教程
目录
原文:https://www.learnweb3.io/tracks/freshman
翻译:李留白
本文是learnweb3的新手篇,包括:
- Level 0:前置基础编程知识
- Level 1:什么是区块链?
- Level 2:什么是Web3?
- Level 3:什么是ETH?
- Level 4:加密钱包?
- Level 5:Remix IDE介绍
- Level 6:Solidity介绍
- Level 7:dApp介绍
- Level 8:加密货币(ERC20)简介
- Level 9:NFT介绍
喜欢视频?
如果您想从视频中学习,我们的 YouTube 上有本教程的录音。单击下面的屏幕截图观看视频,或继续阅读教程!
https://www.youtube.com/watch?v=uwnAXAsd428
先决条件
构建
智能合约
为了构建智能合约,我们将使用Hardhat。Hardhat 是专为全栈开发而设计的以太坊开发环境和框架。简单来说,您可以编写智能合约、部署它们、运行测试和调试代码。
- 要设置安Hardhat项目,请打开终端并执行以下命令
|
|
- 在安装 Hardhat 的同一目录中运行:
|
|
- 选择
Create a basic sample project
- 按回车键已指定
Hardhat Project root
- 如果您想添加一个问题,请按 Enter 键
.gitignore
- 按回车键
Do you want to install this sample project's dependencies with npm (@nomiclabs/hardhat-waffle ethereum-waffle chai @nomiclabs/hardhat-ethers ethers)?
现在你有一个Hardhat项目准备好了!
如果您不在 Mac 上,请执行此额外步骤并安装这些库:)
|
|
编写 NFT 合约代码
让我们安装 Open Zeppelin 合约,在终端窗口中执行这个命令
|
|
-
在 contracts 文件夹中,创建一个名为 NFTee.sol 的新 Solidity 文件
-
现在我们将在 NFTee.sol 文件中编写一些代码。我们将导入Openzeppelin 的 ERC721 Contract。ERC721 是创建 NFT 的最常用标准。在新生赛道中,我们只会使用 ERC721。在二年级课程中,您将详细了解 ERC721。所以别担心,如果你不明白一切:)
|
|
- 编译合约,打开终端并执行这些命令
|
|
配置部署
-
让我们将合约部署到
rinkeby
网络。首先,在文件夹deploy.js
下创建一个名为的新文件scripts
-
deploy.js
现在我们将编写一些代码来在文件中部署合约。
|
|
- 现在在文件夹中创建一个
.env
文件NFT-Tutorial
并添加以下行。使用评论中的说明获取您的 Alchemy API 密钥和 RINKEBY 私钥。确保您获得 rinkeby 私钥的帐户由 Rinkeby Ether 提供资金。您可以在这里获得一些:https ://www.rinkebyfaucet.com/
|
|
您可以将 Alchemy 视为区块链的 AWS EC2。它是一个节点提供者。它通过为我们提供节点来帮助我们与区块链连接,以便我们可以读取和写入区块链。Alchemy 帮助我们将合约部署到 rinkeby。
- 现在我们将安装
dotenv
包以便能够导入 env 文件并在我们的配置中使用它。在您的终端中,执行这些命令。
|
|
- 现在打开 hardhat.config.js 文件,我们将在
rinkeby
此处添加网络,以便我们可以将合约部署到 rinkeby。hardhat.config.js
用下面给出的行替换文件中的所有行
|
|
- 要在您的终端类型中部署:
|
|
- 将打印在终端上的 NFT 合约地址保存在记事本中,您将需要它。
在 Etherscan 上验证
- 转到Rinkeby Etherscan并搜索打印的地址。
- 如果
address
在 etherscan 上打开,你已经部署了你的第一个 NFT 🎉 - 通过单击交易哈希转到交易详细信息,检查是否有令牌转移到您的地址
如果你觉得这篇文章对你有所帮助,欢迎赞赏~
赞赏