跳到主要内容

Deploying an ERC-20 Token using Remix IDE

在一个新标签页中打开 Remix IDE,网址是remix.ethereum.org。 它可能需要一分钟才能加载,但一旦加载完成,请在左侧的工作区面板中创建一个名为 ERC20Token.sol 的新文件:

Remix-new-file

将以下代码复制并粘贴到中央的编辑器面板中:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

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

contract MyToken is ERC20 {
constructor (string memory name, string memory symbol) ERC20(name, symbol) {
// Mint 10000 tokens to msg.sender
// Similar to how 1 dollar = 100 cents
// 1 token = 1 * (10 ** decimals)
_mint(msg.sender, 10000 * 10 ** uint(decimals()));
}
}

点击左侧面板最左侧的Solidity Compile按钮(第二个向下的图标); 确保您选择的Solidity编译器版本为0.8(0.8内的次要版本,例如0.8.4也可以),然后点击Compile ERC20Token.sol

Remix-solidity-compile

一旦合约编译完成,点击最左侧面板上的Deploy & run transactions按钮(Solidity编译器下面的图标)。 在左侧面板的ENVIRONMENT下拉菜单中,选择 Injected Web3

Remix-inject-web3

你将会看到一个 MetaMask 弹窗,请求你允许 Remix IDE 访问它。 点击 Next 然后 Connect 以授予访问权限。

Remix-connect-metamask

在Remix界面中,点击左侧面板的DEPLOY部分旁边的箭头。 填写代币详情,可根据自己的喜好填写(在示例中为GoldenTokenGLD),然后点击transact

Remix-deploy-contract

另一个 MetaMask 弹出窗口将会要求您确认交易。 点击 确认

Remix-deploy-contract-metamask-confirm

几分钟后,交易将由网络确认。 你将在底部面板看到一个成功的消息,以及左边面板下的Deployed Contracts列表下看到该合约。 点击复制按钮复制新部署合约的地址。

Remix-deploy-contract-confirmed

现在,合约已经部署到了Conflux eSpace,我们可以通过MetaMask与其进行交互。

添加ERC-20代币到MetaMask

在 MetaMask 界面中(确保选择的是 Conflux EVM Testnet 网络),点击Add Token按钮:

MetaMask-add-token-button

将从上一步中从Remix中复制的代币地址粘贴到此处。 剩余的代币详细信息会自动填充,因为 MetaMask 在链上找到了该合约。 点击 Next:

MetaMask-add-token

在下一个界面上,您将看到余额(100个代币),这是在我们的合约构造函数中创建的。 点击Add Tokens

MetaMask-add-token-confirm

代币已经成功添加到了 MetaMask 中,我们可以使用 MetaMask 界面查看代币余额,并将代币转移到其他账户中。

使用 MetaMask 转移 ERC-20 代币

接着上一步,点击MetaMask界面的Send按钮:

MetaMask-my-token

选择一个接收者(如果你在 MetaMask 中有多个账户,可以选择另一个账户),然后选择要发送的代币数量。 点击 Next:

MetaMask-send-my-token

备注

同样地,燃气价格应该设置为零,但是这将会随着时间的推移而改变。

点击 Confirm 发送交易到网络:

MetaMask-send-my-token-confirm

几分钟后,交易将由网络确认。 您可以在 MetaMask 界面中看到您的账户所持有的更新后的余额。

MetaMask-my-token-sent-account1

如果您将代币转移到您拥有的另一个 MetaMask 账户,则可以按照前面提到的将代币添加到 MetaMask 上的步骤,在其他账户上查看它的余额。

MetaMask-add-token-account2