Contract-Development
如何在代幣合約上設置 gas 和/或 gasPrice?
我從 Ethereum.org 複製了這個代幣合約,部署到 Rinkeby 後,我無法購買代幣。我真的不知道為什麼,但我認為那是因為我沒有在契約上設置天然氣。有沒有辦法在這個合約上設置gas?
即使你從 ethereum-github 複製了智能合約程式碼,也會顯示
not enough transaction fees, this transaction will fail
. 因為一旦部署了智能合約,您必須編寫一個函式來轉移乙太幣或獎勵智能合約地址可能收到的另一個帳戶,因此您永遠不能將其轉移到任何其他地址。為此,您需要在智能合約程式碼中寫入以下函式:
聲明這兩個變數
地址公共coinOwner;
uint public receivedMoney;
映射(地址 => uint)公共未決取款;
在建構子之後添加
payable
關鍵字。public
還添加這兩個功能:
function sendReceivedMoneyToOwner() public payable returns (bool) { if (msg.value > receivedMoney) { pendingWithdrawals[coinOwner] += msg.value; coinOwner = msg.sender; receivedMoney = msg.value; return true; } else { return false; } } function withdraw() public { uint amount = pendingWithdrawals[msg.sender]; // Remember to zero the pending refund before // sending to prevent re-entrancy attacks pendingWithdrawals[msg.sender] = 0; //msg.sender.transfer(amount); if(!msg.sender.send(amount)) { revert(); //throw; BUT throw is deprecated! } }
希望能幫助到你!
我通常有這個問題,因為連接不好。重新啟動你的錢包並等到“尋找同行……”文本消失