Solidity極簡入門|第三十三講:空投合約
BlockBeats 律動財經 2022-12-01 22:01
我最近在重新學 solidity,鞏固一下細節,也寫一個「Solidity 極簡入門」,供小白們使用(編程大佬可以另找教程),每周更新 1-3 講。
所有代碼和教程開源在 github : github.com/AmazingAng/WTFSolidity
在幣圈,最開心的一件事就是領空投,空手條白狼。這一講,我們將學習如何使用使用智能合約空投 ERC20 Token。
空投 Airdrop
空投是幣圈中一種營銷策略,項目方將 Token 免費發放給特定用戶群體。為了拿到空投資格,用戶通常需要完成一些簡單的任務,如測試產品、分享新聞、介紹朋友等。項目方通過空投可以獲得種子用戶,而用戶可以獲得一筆財富,兩全其美。
因為每次接收空頭的用戶很多,項目方不可能一筆一筆的轉賬。利用智能合約批量發放 ERC20 Token ,可以顯著提高空投效率。
空投 Token 合約
Airdrop 空投合約邏輯非常簡單:利用循環,一筆交易將 ERC20 Token 發送給多個地址。合約中包含兩個函數
getSum() 函數:返回 uint 數組的和。
multiTransferToken() 函數:發送 ERC20 Token 空投,包含三個參數:
_token: Token 合約地址(address 類型)
_addresses:接收空投的用戶地址數組(address[] 類型)
_amounts:空投數量數組,對應_addresses 里每個地址的數量(uint[] 類型)
該函數有兩個檢查:第一個 require 檢查了_addresses 和_amounts 兩個數組長度是否相等;第二個 require 檢查了空投合約的授權額度大於要空投的 Token 數量總和。
空投實踐
1 部署 ERC20 Token 合約,並給自己 mint 10000 單位 Token 。
2 部署 Airdrop 空投合約。
3 利用 ERC20 Token 合約中的 approve() 函數,給 Airdrop 空投合約授權 10000 單位 Token 。
4 執行 Airdrop 合約的 multiTransferToken() 函數進行空投, _token 填 ERC20 Token 地址,_addresses 和_amounts 按照以下填寫
5 利用 ERC20 合約的 balanceOf() 函數查詢上面用戶地址的 Token 餘額,成功變為 100 和 200,空投成功!
總結
這一講,我們介紹了如何使用 solidity 寫 ERC20 Token 空投合約,極大增加空投效率。我擼空投收穫最大的一次是 ENS 空投,你們呢?
暢行幣圈交易全攻略,專家駐群實戰交流
▌立即加入鉅亨買幣實戰交流 LINE 社群(點此入群)
不管是新手發問,還是老手交流,只要你想參與虛擬貨幣現貨交易、合約跟單、合約網格、量化交易、理財產品的投資,都歡迎入群討論學習!
- 從零開始學合約系列講座熱烈報名中
- 掌握全球財經資訊點我下載APP
文章標籤
上一篇
下一篇