Solidity

退還 ETH 轉賬的智能合約

  • October 25, 2017

我想實現智能合約,在某些條件下將 ETH 發送回發送者:

function() public payable {
   msg.sender.transfer(msg.value);
}

我通過gasLimit等於4700000

web3.eth.sendTransaction({from: wallet, to: contract.address, value: ether(2), gasLimit: 4700000});

執行時仍然看到錯誤testrpc

Error: VM Exception while processing transaction: out of gas

將 ETH 發送到其他智能合約通常可以正常工作。即時退款有什麼問題?

您設置了 gasLimit 而不是氣體。我認為您要發送的是:

web3.eth.sendTransaction({from: wallet, to: contract.address, value: ether(2), gas: 4700000});

引用自:https://ethereum.stackexchange.com/questions/29191