如何快速部署ERC-20代币,以Polkadot为例

ERC-20 是最常见的同质化代币标准,广泛用于构建:区块链加密货币,治理代币,质押 / Staking 机制等。Polkadot Hub(Asset Hub) 通过 PolkaVM + 以太坊兼容智能合约,让开发者可以像在 Ethereum 上一样,快速完成代币部署,并直接接入 MetaMask 等钱包。

本教程将使用:

  • Polkadot Remix IDE:网页版 Solidity 开发工具

  • OpenZeppelin 官方合约:安全、合规的 ERC-20 实现

  • Polkadot Faucet 的 PAS 测试币:用于支付 Gas

目标:在 Polkadot Hub TestNet 上部署一个支持 owner mint 的 ERC-20 代币。

二、前置条件

开始前请准备:

  1. 已安装并将钱包连接到 Polkadot Hub 的 MetaMask

  2. 账户中拥有少量 PAS / PAS 测试币(从 Faucet 获取)

  3. 具备基础 Solidity 与代币概念

三、创建 ERC-20 合约

1. 打开 Polkadot Remix IDE

进入 Polkadot Remix IDE 页面

2. 新建文件

在 contracts 文件夹下:

  • 点击 Create new file

  • 命名为:

MyToken.sol

3. 粘贴以下代码

MyToken.sol

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

import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol";

contract MyToken is ERC20, Ownable {
    constructor(address initialOwner)
        ERC20("MyToken", "MTK")
        Ownable(initialOwner)
    {}

    function mint(address to, uint256 amount) public onlyOwner {
        _mint(to, amount);
    }
}

代码要点

  • 使用 OpenZeppelin:

    • ERC20.sol:实现转账、授权、余额

    • Ownable.sol:只有 owner 才能 mint

  • 构造函数:

    • initialOwner:代币管理员

    • "MyToken":代币名称

    • "MTK":代币符号

  • mint():

    • 数量需按 18 decimals

    • 1 个代币 = 1000000000000000000

小技巧

💡 可用 OpenZeppelin Contracts Wizard 快速生成自定义代币合约,再粘贴到 Polkadot Remix 中部署。

四、编译合约

1. 选择左侧插件:Solidity Compiler

2. 点击:Compile MyToken.sol

3. 成功后会看到:

  • 绿色 ✔️ checkmark

  • Compiler 图标变为成功状态

编译过程会:

  • 检查语法

  • 生成可上链的 bytecode

五、部署合约

1. 打开部署插件

选择:Deploy & Run Transactions

2. 设置环境

  • ENVIRONMENT 选择:

Injected Provider – Talisman
  • ACCOUNT 选择你要部署的地址

3. 填写参数

  • 输入 owner 地址

  • 点击:Deploy

4. 钱包确认

Talisman / MetaMask 会弹窗:

  • 检查 Gas 与数据

  • 点击 Approve

部署成功后终端会显示:

  • Contract Address

  • Tx Hash

六、与代币交互

1. 展开已部署合约

在:Deployed / Unpinned Contracts

点击合约即可看到方法:

  • balanceOf

  • transfer

  • approve

  • transferFrom

  • 👉 mint

2. Mint 新代币

进入 mint():

  • 填写:

    • 接收地址

    • 数量(1 代币加 18 个 0)

  • 点击:Transact → Approve

成功后终端会返回:

  • 交易回执

  • 余额已更新

3. 常用方法

  • balanceOf(address):查询余额

  • transfer(to, amount):转账

  • approve(spender, amount):授权

  • transferFrom():被授权转账

  • allowance():查询授权额度

七、完成 🎯

你已获得:

  • 一个 Ethereum 兼容的 ERC-20 代币

  • 运行在 Polkadot Hub PolkaVM 上

  • 可直接接入 EVM 钱包生态

接下来你可以:

  • 设计质押合约

  • 作为治理投票 token

  • 接入前端 dApp

阅读原文:https://docs.polkadot.com/tutorials/smart-contracts/deploy-erc20/

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值