本文介绍了如何在币安智能链 (BSC) 上创建 BEP20 代币,包括设置 Metamask 连接到 BSC 测试网、获取测试 BNB、使用 Remix IDE 编写和部署代币合约,以及将代币添加到 Metamask 钱包。BEP20 代币在 BSC 上的地位类似于以太坊上的 ERC20 代币,创建过程基本相同。
BEP20 在 BNB 智能链中,相当于以太坊网络中流行的 ERC20 代币。区别在于,BEP20 代币不是在以太坊网络上运行,而是在 BNB 智能链网络上运行。除了这个区别之外,由于 BSC (BNB 智能链) 为其所有智能合约实现了以太坊虚拟机 (EVM),因此它们在规范和实现上实际上是相同的。本指南将引导你完成创建自己的 BEP20 代币的过程。
对于这个新项目,首先要做的是在你的 Metamask 钱包中配置 BSC Testnet。
你可以通过打开 Metamask,单击 Networks 选项,然后单击 Custom RPC 选项来完成此操作。要配置你的钱包以连接到 BSC Testnet,你需要像下图一样填写字段
下一步你需要做的是获取一些 BNB 来玩一下。BNB 是 BSC 的原生货币,BNB 相当于以太坊中的 ETH。为了获得一些测试 BNB,你应该去这里
你可以复制你的 MetaMask 地址并将其放在网站上的可用字段中以获取 BNB。有了我们钱包中的新 BNB,我们可以开始消费一些了!
由于 BSC 使用 EVM,因此创建 ERC-20 代币和 BEP20 代币的代码是相同的。 这允许我们从 OpenZeppelin 获取 ERC 代币规范 并在我们的智能合约中使用它。
接下来要做的就是打开一个新标签并转到 Remix IDE 并创建一个新的 Workspace。
在 contracts 文件夹中,我们将创建一个名为 BEP20.sol 的新合约。
在这个新文件中,你可以编写以下代码:
// contracts/BEP20.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
contract BEP20 is ERC20 {
constructor(uint256 initialSupply) ERC20("BEP20Test", "BPT") {
_mint(msg.sender, initialSupply;)
}
}
第 1/2 行:许可证和文件所在的位置
第 3 行:我们将 solidity 编译器配置为 0.8.0 版本。
第 5 行:导入 OpenZeppelin 的 ERC20 合约。 我们可以使用此规范来实现我们的新代币。 这是一个标准,允许其他钱包和程序轻松地与新代币交互。
第 7 行:这指定了一个新的合约。 你可以将 BEP20 重命名为任何名称。 但是,ERC20 部分是 solidity 的一部分,指示它使用我们在第 5 行导入的 ERC20 合约。
第 8 行:当我们在 BSC 测试网络中部署我们的合约时,将调用函数构造器。 我们将为其提供一个类型为 uint256 的单个参数 initialSupply。 然后,我们将使用我们从 OpenZeppelin 导入的 ERC20 功能。 它有两个参数:第一个是代币的名称,第二个是代币的符号。 在我们的例子中,代币将是 BEP20Test,并将以符号 BPT 显示。
第 9 行:对 _mint 的调用将创建代币并将新装入的代币发送给 msg.sender,后者是将合约部署在测试网上的人。 在这种情况下,就是你! 它将创建我们在 initialSupply 中传递给它的代币数量。
注意:它将以 WEI 格式(即 1e-18)创建 InitialSupply 的代币数量。 因此,要创建 100 个代币,你需要传递 100000000000000000000
编写了 BEP20.sol 合约后,我们现在必须将合约部署到 BSC Testnet。 单击 BEP20.sol 并打开编译器选项卡,将编译器版本更改为 0.8.0+commit.c7dfd78e。 单击指示 Compile BEP20.sol 的蓝色按钮
编译合约后,你就可以进行部署了! 单击 Remix 中的 Deploy & Run Transactions 部分,并将 Environments 的值更改为 'Injected Web 3'。 如果你没有将 Metamask 连接到 Remix,它会要求你先将它连接到网站,然后再请求你的确认。
在 Remix 中连接 Metamask 后,你应该在 Account 字段中看到你的地址。 如果是这种情况,那么现在在 Contract 选项中选择合约 BEP20。 你应该会看到一个橙色的 Deploy 按钮,然后在它旁边有一个字段,这是我们将传递给合约的参数,即我们之前看到的 initialSupply 参数
我们将创建 100 个代币,为此我们将传递值 100000000000000000000 并单击 Deploy。
你必须在 metamast 中接受交易 , 在网络上部署任何东西都需要花费一些 BNB。
如果你到目前为止一切都做对了,你应该会在终端中看到一条成功消息!
你可以复制 Deployed Contracts 部分中的合约地址,然后在 bscsscan 中验证它。 你可以在 from 字段中看到你的地址,并且可以验证是否已将 100 个 BPT 发送到你的钱包。
为了能够在 Metal Mask 扩展中看到这一点,你必须单击 Assets 部分中的 Add Tokens。 将出现一个带有 3 个字段的菜单,供填写。
如果你粘贴从 Remix 终端复制的合约地址,其他字段将自动填写,你就可以接受新代币。
最终应该看起来像这样:
恭喜! 你刚刚完成了所有操作! 现在你知道如何在 BSC 网络上创建自己的代币并将其添加到 MetaMask。 实际上,你现在知道的更多了,对于以太坊网络来说,这完全是相同的过程,你只需要在以太坊网络而不是 BSC 网络中配置 Remix 和 MetaMask! 如果你有兴趣完全这样做,你可以在此处找到分步指南。
订阅我们的新闻通讯以获取更多关于以太坊的文章和指南。如果你有任何类型的评论,请随时在我们的 Twitter 上发表评论。你始终可以在我们的 Discord 服务器上与我们交谈,你可以找到一些最优秀的开发人员 :)
- 原文链接: quicknode.com/guides/bnb...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!