Erc-20
沒有事件的 ERC-20
我創建了一個不發出任何事件的不合規 ERC-20 令牌。我不想修復這個錯誤,因為修復它會產生其他麻煩。
那麼,具有此錯誤(不發出事件)的 ERC-20 代幣在實踐中是否有效?
我意識到 Etherscan 不會通知存款。也許 MetaMask 不會動態更新(會嗎?)
還有哪些可能的麻煩?它們很重要嗎?
好吧,我將披露我這樣做的原因:我圍繞 ERC-1155 令牌製作了 ERC-20 包裝器。如果沒有 ERC-1155 合約的特殊支持,就無法檢測到此 ERC-1155 的轉移。無論如何,我們將來應該切換到 ERC-1155。所以我將 ERC-20 作為一個 hack。
從理論上講,您的合約與 ERC20 兼容,因為無法強制(甚至檢查)合約是否每次都發出所需的事件。在任何情況下,都沒有標準方法可以確定合約是否兼容 ERC20。
無論如何,這主要取決於不同的第三方如何實施他們的 ERC20 集成。核心 ERC20 功能將起作用,但各種第三方可能會在顯示結果時遇到問題。
它不會是符合 EIP-20 的令牌。一些依賴事件的服務將無法執行,例如區塊瀏覽器或輕錢包。
來自EIP-20規範:
轉移
_value
將代幣數量轉移到地址,_to
並且必須觸發Transfer
事件。$$ .. $$