ERC-20代币是区块链世界最通用的价值载体,无论你是想做社区激励、链上积分,还是打造新一代Web3应用的第一步,都离不开ERC-20标准。Avalanche 以其秒级确认、极低Gas费及完全兼容EVM的特点,成为部署智能合约的绝佳选择。本文将手把手演示如何在Avalanche C-Chain(测试网Fuji)上,用Solidity + Remix + Core钱包快速发行带有“随时增发”能力的代币。
1. 环境与工具快速准备
1.1 开启 Fuji Testnet 网络
- 打开 Core 钱包 > 设置 > 高级
- 开启测试网模式,钱包将自动切换至 Fuji C-Chain
此时,钱包地址还是空的,需要领取测试代币。
1.2 领取 FUJI 测试 AVAX
=Faucet 的做法=
- 打开 Avalanche官方测试币领取页
- 输入你的 C-Chain 地址,点击 Request 2 AVAX
- 若 faucet 界面要求 coupon,可前往 Guild 或通过官方 Discord 向管理员领取
30 秒内到账,钱包刷新即可看到 2 个测试 AVAX。
2. 使用Remix在线部署Solidity合约
2.1 打开Remix并新建合约文件
- 浏览器访问 remix.ethereum.org
- 左侧文件树中,点击 Create new file
- 命名为
MyToken.sol,并保存
2.2 引入OpenZeppelin发行库
把下列代码直接粘进 MyToken.sol,即可引用 OpenZeppelin 的现成 ERC-20 预设:
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "@openzeppelin/contracts/token/ERC20/presets/ERC20PresetMinterPauser.sol";Remix 会自动拉取 GitHub 上的依赖,无需手动下载。
3. 编译、连接与部署
3.1 正确编译
- 切换顶部标签页为 Solidity compiler
- 选择 0.8.x 版本(≥0.8.0 即可)
- 点击 Compile MyToken.sol
3.2 连接Core钱包
- 进入 Deploy & run transactions 页
- Environment 下拉选 Injected Web3
- 钱包会弹出连接请求,若无弹窗请解锁钱包后刷新 Remix
- 地址应自动填入 ACCOUNT 框
3.3 填写代币参数并部署
- 搜索到
ERC20PresetMinterPauser.sol并选中 运行时出现两个输入框:name 与 symbol
- 例:
name = Avalanche Demo Token - 例:
symbol = ADT
- 例:
- 点击 Deploy 并确认 Core 钱包弹窗
- Deploy 完成后,Remix 机器人控制台会输出
transaction hash
4. 在区块浏览器核对代币
复制控制台里的交易哈希,粘贴到 Fuji 区块浏览器,即可看到:
- From:你的钱包地址
- Contract Address:新发行代币的合约地址,请保存好
5. 给我们的地址增发 1,000 ADT
回到 Remix 的 Deployed Contracts:
- 找到
mint方法 输入
to填你的钱包地址amount填 1,000 ADT 的 wei 单位(18 位):1000000000000000000000
- 点击 mint → 确认钱包弹窗
完成!
6. 在Core钱包添加自定义代币
- 在 Core 主界面切到 C-Chain
- 点击 Manage / Add custom token
- 输入刚才得到的 合约地址
- 自动读取 小数位 18、符号 ADT,无需手动填写
- Add,钱包界面即刻显示 1,000 ADT
代币已正式共你所有,可自由转账、空投、或在后续智能合约中使用。
👉 立即体验新代币燃料费一次不到0.01美金,点击开启无门槛交易
7. 常见问题 FAQ
Q1:为什么选择 Avalanche C-Chain而不是Arbitrum或BSC?
A:Avalanche C-Chain 完全兼容以太坊虚拟机,任何 Solidity 项目都可“一键迁徙”。且出块时间为 2 秒左右、Gas 费用低至几分钱,是高频交互场景的理想选择。
Q2:合约地址和交易哈希弄丢了怎么办?
A:只要钱包地址没变,区块浏览器(SnowTrace)里用地址搜索即可找回全部部署记录;实在找不到,进入 Core钱包 > 交易记录 即可复制 Hash。
Q3:测试网代币能迁移到主网吗?
A:不能。测试网中发行的 ADT 仅在 Fuji 网络上有效,用于功能测试。主网上线前需重新部署合约并审核。
Q4:想让更多地址能增发代币怎么办?
A:在合约中,mint 方法默认由拥有 MINTER_ROLE 的角色调用。打开 ERC20PresetMinterPauser.sol 找到 grantRole,输入地址即可授权别人增发。
Q5:如何进一步限制增发权限?
A:Solidity 中可继承 ERC20Burnable、ERC20Capped 等高级模块,或使用自定义的 Supply 管理逻辑,实现固定上限、线性解锁、减产机制等复杂 Tokenomics。
8. 结尾:下一步可以做什么?
- 项目官网 & 文档:把合约地址、Tokenomics、权限分配写进白皮书
- 前端一键Mint:基于网页或Telegram Bot,后台调用已部署合约的
mint方法 - 上线DEX:借助 DEX(例如 Trader Joe)创建 ADT/USDC 流动性池,开启交易
一条高效、低费、兼容以太坊的开发轨道已在脚下——现在轮到你把创意落地了!