ERC-20 代币开发快速上手:在 Filecoin 网络上部署你的首个智能合约

·

本文将引导你完成在 Filecoin 网络上部署第一个智能合约的全过程。无论你是区块链开发新手还是希望扩展多链开发经验,本指南都将通过清晰步骤,帮助你快速创建并部署一个符合 ERC-20 标准的代币。

准备工作:设置钱包与获取测试币

在部署合约前,你需要一个能与 Filecoin 网络交互的钱包,并获取测试用的代币以支付 gas 费用。

安装并创建 MetaMask 钱包

MetaMask 是一款流行的浏览器加密钱包,支持与多种区块链网络交互,包括 Filecoin。

  1. 访问 MetaMask 官网,点击 Download 按钮,选择你的浏览器(如 Chrome、Firefox、Brave 等)进行安装。
  2. 安装完成后,点击浏览器扩展栏中的 MetaMask 图标。
  3. 在欢迎界面,选择 创建新钱包
  4. 设置一个安全密码,此密码将在每次使用钱包时用于验证。
  5. 系统会生成一个 助记词(Secret Recovery Phrase)。请务必将其抄写并保存在绝对安全的地方。这是恢复钱包访问权限的唯一方式。
  6. 验证助记词后,你的钱包就创建成功了。

切换至 Filecoin 测试网

默认情况下,MetaMask 连接的是以太坊主网。我们需要将其切换到 Filecoin 的测试网络——Calibration testnet。

  1. 访问 chainlist.org 网站。
  2. 开启顶部的 Testnets 开关,在搜索框中输入 Filecoin
  3. 在搜索结果中找到 Filecoin Calibration Testnet,点击 Connect Wallet
  4. 在弹出的 MetaMask 窗口中,依次点击 Next -> Connect -> Approve -> Switch network
  5. 完成以上步骤后,MetaMask 顶部将显示你已成功连接到 Filecoin Calibration 网络。

获取测试网代币 (tFIL)

测试网 Filecoin (tFIL) 没有实际价值,专供开发者测试使用。

  1. 在 MetaMask 中,点击账户名复制你的钱包地址。
  2. 访问 Filecoin Calibration 水龙头网站。
  3. 将你的钱包地址粘贴到输入框中,点击 Send Funds
  4. 水龙头会处理你的请求。通常在一两分钟后,你的 MetaMask 账户中就会收到一定数量的 tFIL。

完成这些准备后,你就拥有了部署和交互合约所需的“燃料”。

开发与部署:使用 Remix 创建 ERC-20 代币

我们将使用 Remix IDE,一个功能强大的在线智能合约开发环境,来编写和部署我们的代币合约。

创建新工作区

  1. 访问 remix.ethereum.org。
  2. 在左侧图标栏中,点击文件管理器图标,然后点击 Create new workspace
  3. Choose a template 下拉菜单中选择 ERC20
  4. Customize template 部分,勾选 Mintable(可增发)选项。
  5. 为你的工作区起一个名字(例如 MyFirstToken),然后点击 OK

自定义代币合约

Remix 已为你生成了一个符合 ERC-20 标准的基础合约。我们只需进行简单定制。

  1. 在左侧文件树中,进入 contracts 文件夹,打开 MyToken.sol 文件。
  2. 在代码编辑器中,找到以 contract MyToken is ERC20, ERC20Burnable, ERC20Pausable, Ownable 开头的行。
  3. MyToken 替换为你想要的代币名称(例如 CorgiCoin)。
  4. 在同一行的构造函数中,将第二个字符串参数替换为你想要的代币符号(例如 CRG)。
  5. 点击编译器图标(或按 Ctrl+S / Cmd+S),编译合约以确保没有错误。编译成功后,底部会显示绿色对勾。

👉 探索更多智能合约开发策略与工具

部署合约到 Filecoin 网络

这是最关键的一步,我们将把编译好的合约部署到 Filecoin Calibration 测试网上。

  1. 点击左侧的 Deploy & run transactions 选项卡。
  2. ENVIRONMENT 下拉菜单中,选择 Injected Provider - MetaMask。此时 MetaMask 会弹出连接请求,点击 NextConnect 以授权 Remix 访问你的钱包。
  3. 确认 ACCOUNT 下方显示的是你的钱包地址和余额(Remix 可能显示为 “ether”,但实际扣款的是 tFIL,无需担心)。
  4. CONTRACT 下拉菜单中,确保选中了你刚刚修改的合约(如 CorgiCoin)。
  5. 点击 Deploy
  6. MetaMask 会弹出交易确认窗口,显示预估的 gas 费用。仔细检查后,点击 Confirm

请注意:Filecoin 网络大约每 30 秒产生一个新的 tipset(区块组)。合约部署交易需要被网络接收并确认,这个过程通常需要 60 到 90 秒。请耐心等待,部署成功的通知将出现在 Remix 控制台中。

交互与管理:使用你的自定义代币

合约部署成功后,你便可以与它进行交互,并开始在钱包中管理你的代币。

铸造初始代币

我们部署的是一个“可增发”代币,因此需要手动铸造第一批代币。

  1. 在 Remix 的 Deploy 选项卡下,展开 Deployed Contracts 区域,你会看到已部署的合约地址。
  2. 点击合约旁边的下拉箭头,找到 mint 方法。
  3. to 字段中,粘贴你的钱包地址(接收代币的目标地址)。
  4. amount 字段中,输入你想要铸造的代币数量。注意:这里需要输入以 attoFIL(FIL 的最小单位,1 FIL = 10^18 attoFIL)为单位的数值。例如,要铸造 100 个代币,应输入 100000000000000000000
  5. 点击 transact,并在 MetaMask 中确认交易。同样,此过程需要等待约 90 秒。

将代币添加到 MetaMask

目前,你的代币还存在于链上合约中,但 MetaMask 并未自动识别它。你需要手动添加代币信息。

  1. 在 Remix 的 Deployed Contracts 部分,点击复制图标,拷贝你的合约地址。
  2. 在 MetaMask 中,点击 Assets 选项卡,然后点击 Import tokens
  3. Token Contract Address 字段中粘贴刚才复制的地址,其余信息(代币符号和小数位数)通常会自动填充。
  4. 点击 Add custom token,然后确认导入。

现在,你的 MetaMask 资产列表中就会显示你刚刚创建的代币及其余额了!你可以尝试将它们发送给同样配置了测试网环境的朋友。

常见问题

Q1: ERC-20 标准是什么?
A: ERC-20 是以太坊上提出的一种技术标准,用于发行和实现同质化代币。它规定了代币合约必须实现的一组基本函数(如转账、查询余额等),确保了不同代币之间的兼容性。如今,它已成为多链生态中最广泛采用的代币标准之一。

Q2: 为什么一定要用测试网?
A: 测试网是主网的模拟环境,其中的代币没有真实价值。开发者可以在测试网上自由地部署合约、测试功能和处理各种交易场景,而无需承担任何财务风险,是学习开发和排除错误的必备沙盒。

Q3: 部署或交易时为什么需要等待较长时间?
A: 这与 Filecoin 网络的共识机制有关。其出块时间(约 30 秒)比一些链更长,交易需要被纳入一个 tipset 并等待后续确认以确保安全性和最终性。通常 1-2 个 tipset(60-90 秒)后交易即可确认。

Q4: 如何将本教程应用到 Filecoin 主网?
A: 流程完全一致,只需将网络从 “Calibration Testnet” 切换至 “Filecoin Mainnet”,并使用有真实 FIL 余额的钱包即可。但在主网上操作前,务必在测试网上进行充分测试。

Q5: 除了 Remix,还有哪些工具可以开发 Filecoin 智能合约?
A: 你可以使用 Hardhat、Truffle 等更本地的开发框架,配合 Filecoin 相关的插件和库进行开发。这些工具提供了更强大的测试、部署和脚本编写能力,适合更复杂的项目。

Q6: 交易失败,提示 Gas 不足怎么办?
A: 这通常意味着你钱包中的 tFIL (测试币) 余额不足以支付该次交易所需的 gas 费用。请返回水龙头网站再次申请一些测试币,然后再重试交易。