分类
Web3

轻松部署ERC20:3行代码让您在BSC测试网上轻松完成!

我们的目标: 在BSC测试网创建一个名称为GeekWho Token,标识符为GEEK的TOKEN,发行量为2100w,然后给自己转账一笔。

准备工作:

  1. 从 https://metamask.io/ 安装MetaMask chrome钱包,创建一个钱包,备份助记词。
  2. 通过 https://chainlist.org/ 链接到BSC测试网络。
  3. 在 https://testnet.bnbchain.org/faucet-smart (BSC测试网)领水,部署时需要消耗GAS。

实现步骤:

  1. 打开remix网址: https://remix.ethereum.org/
  2. 在默认工作区的文件夹contracts下,新建文件GeekWhoToken.sol
  3. 在打开的文件里,填写以下内容。

ERC20合约内容:

//SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

import "https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol";

contract GeekWhoToken is ERC20 {

  constructor(string memory _name, string memory _symbol) ERC20(_name, _symbol) {
    _mint(msg.sender, 21000000 * 10 **18);
  }
}

其中21000000为发行总量。

在左侧按钮,选择编译,当看到有一个绿色对号,代表编译通过。

接下来我们开始合约部署,点击左侧的编译按钮下方的部署&发送交易按钮:

  1. 选择环境为Injected Provider – MetaMask。
  2. 保证你的MetaMask当前环境为BSC测试网。
  3. 在弹出的按钮选择你要链接的地址。

在部署右边点击箭头向下的三角,会让你输入name和symbol。在这里,我们输入

_NAME=GeekWho Token
_SYMBOL=GEEK

点击transact,发送交易到BSC测试网,在弹出的MetaMask确认框,点击确认,开始部署合约写入TOKEN信息。

我们稍等一会儿,就提交成功了。
https://testnet.bscscan.com/tx/0xe94f7bf3b13e93f6a15890628c58e972f76d0555bf1d25ba386be104637c5284

注意事项:

  1. BSC测试网选择chainid为97的。
[Binance Smart Chain Testnet](https://chainlist.org/chain/97)

ChainID:97

Currency:tBNB
  1. 注意确认MetaMask的环境是否已经切换BSC测试网,否则部署会不成功。部署合约前,注意要填入TOKEN的名称以及标识符,不然可能部署名称为空的合约。
  2. 注意数值的精度为10^18,所以发送一个GEEK的数值,在转账时要填的参数值为1000000000000000000。一共18个零。

合约代码解析:

  1. 第一行注释是机器可读行 (// SPDX-License-Identifier: MIT),这里我指定了MIT许可协议。
  2. 第二行代码标识我们采用0.8.0以上的编译器进行编译。prama指令必须在代码的第一行,它告知编译器用什么版本将solidity代码转换为机器可读的字节码。
  3. 第三行是申明了一个GeekWhoToken的合约。关键字 contract告诉编译器你正在声明智能合约。如果你有面向对象编程的经验,你可以理解为有一个GeekWhoToken的类,继承了基类ERC20的全部属性和方法。
  4. 第四行申明了一个构造函数,传入TOKEN的名称和标识符,并必须调用父类ERC20的构造函数。
  5. 第五行我们通过_mint函数初始化了发行总量。在构造函数中使用_mint 函数,将 21000000 个代币分配给合约创建者。这里使用了 18 位小数,乘以 10 的 18 次方,表示将代币的总数转换为 wei 单位。
  6. 实际代码有5行,前2行都是Solidity统一规范,后面3行就是实际发行TOKEN的代码。

合约调用:

在这里,我们通过已部署的合约进行调用:


调用对应的name函数:

调用symbol函数


调用totalSupply函数


调用transfer函数

转账成功交易TX:
https://testnet.bscscan.com/tx/0x967ad0883277320043c3569bb4639c37545481b765d027e1787b9aa6f8192ecd

总结:

  1. 我们成功地部署一个合约,发行了名称为GeekWho Token,标识符为GEEK的TOKEN,初始总量为2100w。
  2. 在REMIX IDE下,通过接口成功查询到已部署合约的信息,比如总量、名称、标示符等。
  3. 合约部署成功后,我们给自己转账一笔,发送1个GEEK给指定的账户。

原文发表在Mirror:https://mirror.xyz/geekwho.eth/ANJNSlDY0sis5RDDkK4Tp1OU7HfTnSRxlyzQavgDr7U

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注