作者:
petC (sixeyeflyingfish)
2019-06-30 04:04:52就是說,如果要灑 ETH 給很多人
一筆一筆 tx 慢慢按實在是手會很痠
就算寫 JS 用 web3 批次送還是會浪費手續費
比較好的方式應該是用合約分錢
雖然發合約也要吃 gas,但邊際成本低很多
大概是發五筆會打平,以上會省
重點是不用一直點確認交易
這邊簡單講一下流程
首先需要有發錢用的合約
大概是這樣
https://github.com/artistic709/solidity_contracts/blob/master/SimpleTransferMultiple.sol
然後打開 Solidity IDE - Remix
http://remix.ethereum.org/#optimize=false&version=soljson-v0.4.24+commit.e67f0147.js
左上角新增一個合約,把程式碼貼進去
https://i.imgur.com/TOG9P55.png
編譯語言選 Solidity,然後 compile
https://i.imgur.com/RQcyFXl.png
再到執行區,切到 injected Web3,跟你的 MetaMask 連動
https://i.imgur.com/iQ6tTLA.png
Value 欄位輸入灑錢的"總量",單位可以改成 ether (=10^18 wei)
Deploy 參數填灑錢的地址陣列,格式是 ["0x1","0x2","0x3"]
https://i.imgur.com/LaWIzmU.png
最後按下黃色的 Deploy,會確認是否要發出交易
錢就會順利的平分到每一個地址了
我的觀察啦