本頁面使用機器翻譯自英語,可能包含錯誤或不清楚的語言。如需最準確的信息,請參閱英文原文。由於更新頻繁,部分內容可能與英文原文有出入。請加入我們在 Crowdin 上的努力,幫助我們改進本頁面的翻譯。 (Crowdin translation page, Contributing guide)
ERC-20
概述
在 Kaia 上建立可替代代幣的步驟與您在 Ethereum 上的步驟相似,它使用 ERC20 標準。
為了遵循標準,您將部署一個可實作下列事件和功能的契約:
function name() public view returns (string) //optionalfunction symbol() public view returns (string) //optionalfunction decimals() public view returns (uint8) //optionalfunction totalSupply() public view returns (uint256)function balanceOf(address _owner) public view returns (uint256 balance)function transfer(address _to, uint256 _value) public returns (bool success)function transferFrom(address _from, address _to, uint256 _value) public returns (bool success)function approve(address _spender, uint256 _value) public returns (bool success)function allowance(address _owner, address _spender) public view returns (uint256 remaining)event Transfer(address indexed _from, address indexed _to, uint256 _value)event Approval(address indexed _owner, address indexed _spender, uint256 _value)
- 名稱:返回 token 名稱的方法。
- symbol:返回 token 符號的方法。
- 小數:返回代幣使用的小數點數的方法。它用來定義代幣的最小單位。例如,如果 ERC-20 代幣的小數位值為 18,這表示代幣可以分割到小數位十八位。
- 總供應量:定義您的代幣總供應量的方法;當達到此限制時,智慧契約將拒絕建立新的代幣。
- balanceOf:返回錢包地址擁有的代幣數量的方法。
- 轉讓:從總供應量中抽取一定數量的代幣並提供給使用者的方法。
- transferFrom:另一種傳輸方式,用來在使用者之間傳輸代幣。
- 批准:考慮到總供應量,此方法驗證是否允許智能合約分配一定數量的代幣給使用者。
- allowance:除了檢查一個使用者是否有足夠的餘額發送一定數量的代幣給另一個使用者之外,此方法與核准方法完全相同。
- ** 轉移事件**:代幣轉移時發出
- Approval 事件:有令牌核准時發出。
開始使用
在本節中,您將使用 Remix Online IDE 建立並部署您的 ERC20 代幣合約。由不同團隊開發的符合 ERC20 的代幣有數種實作,每種代幣的開發都考量到數個因素。為了方便與安全起見,我們會使用 OpenZeppelin ERC-20 契約來建立我們的代幣。有了 OpenZeppelin,我們不需要寫整個 ERC-20 介面。相反地,我們可以匯入函式庫合約並使用它的函式。
步驟 1:建立 ERC20 代幣合約
開放式合約精靈
- 開啟 OpenZeppelin Contract Wizard
- 選擇 ERC20。
- 提供標記的 ** 名稱** 和 ** 代號**。例如:分別為 Greek 和 GK。
- 在 Premint 欄位中,設定為 10,000。這會為部署者建立初始代幣數量。
- 在 ** 功能** 部分,勾選 Mintable 方塊,允許特權帳戶 (onlyOwner) 建立更多供應。
- 按一下 Copy 圖示,複製代碼以便在下一節的 Remix 上使用。
