【问题标题】:create ERC20 token with custom parameters in transfer function在传输函数中使用自定义参数创建 ERC20 代币
【发布时间】:2019-02-01 20:37:40
【问题描述】:

我已经使用以下代码创建了 ERC20 代币并使其正常工作

https://ropsten.etherscan.io/address/0x299d8c3672b95f5a38af9a8d69590c4546219859#code

问题 我想在传输erc20令牌时添加一个自定义参数,所以我在传输函数中添加了一个参数项目类型,如下所述

https://ropsten.etherscan.io/address/0x869Ac98EC03f220F6C49AaD2AabA4ad53924e74B#code

每当我尝试从 metamask 或使用 web3.x 的应用程序传输一些令牌时。交易失败。有人遇到同样的问题吗?

问候 马尼坎丹C

【问题讨论】:

    标签: angularjs node.js blockchain ethereum solidity


    【解决方案1】:

    ERC20 接口不是一段代码。这是程序员之间关于合约应该是什么样子的协议。

    程序员群体之间的协议通常被称为“标准”。这就是为什么 ERC20 通常被称为代币标准。

    在代码中,标准被实现为一个接口,因此编译器可以检查您是否符合标准。

    如果你改变界面,你就改变了标准。因此,您编程的不再是 ERC20 代币。因此,其他软件因为不是 ERC20 代币而拒绝接受智能合约作为 ERC20 代币也就不足为奇了。

    如果您想进行修改

    应该注意,接口只强制执行必须实现的内容。您要添加的任何功能都没有限制。因此,您可以随意添加specialTransfer() 函数。

    【讨论】:

    • 感谢您的解释。那我可以去ERC223令牌吗?github.com/Dexaran/ERC223-token-standard因为在erc223令牌传输函数中,有data参数来存储其他信息
    • 啊,这很酷。我不知道 Solidity 支持函数重载。如果 ERC223 真的向后兼容 ERC20,那么是的,钱包会将其视为 ERC20
    • 是的,ERC223 支持向后兼容。然而问题是 erc223 只是一个提案而不是标准令牌。所以我不确定它是否可以安全使用。
    猜你喜欢
    • 2022-12-18
    • 2022-07-29
    • 2018-04-10
    • 2015-08-17
    • 2016-08-03
    • 1970-01-01
    • 1970-01-01
    • 2018-06-13
    • 2018-06-11
    相关资源
    最近更新 更多