文章目录
概述
这篇文章主要展示如何用合约实现 ERC20 的转入转出功能。主要实现方式是声明IERC20接口,然后在合约中用ERC20的地址实例化ERC20,调用transfer方法实现转出,调用transferFrom方法实现转入。
实现IERC20接口
直接引入openzepplin的IER20接口
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
实现代码可查看:https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/IERC20.sol
协议说明可查看:https://ethereum.org/zh/developers/docs/standards/tokens/erc-20/
实例化ERC20
我们在构造方法中传入ERC20地址,并实例化
IERC20 private token;
constructor(address tokenAddr) {
token = IERC20(tokenAddr);
}
实现ERC20转出
把合约地址上持有的ERC20转出到对应地址
function transferOut(address to, uint256 amount) public returns (boo

本文详细介绍了如何在智能合约中实现ERC20代币的转入和转出功能,包括声明接口、实例化合约、转出检查与执行、转入验证与执行。通过阅读,Web3开发者可以理解如何在实践中应用ERC20标准。
最低0.47元/天 解锁文章
182





