Contract-Development
如何從 web3@1.0.0 的託管合約中提取資金?
我將 ETH 存入一個簡單的合約中,我想取回它。我有這個功能:
function refundBalance() public onlyOwner { uint256 balance = address(this).balance; msg.sender.transfer(balance); emit LogReturnedFunds(msg.sender, balance); }
我在終端中通過 node 和 web3@1.0.0-beta.35 呼叫它:
contract.methods.refundBalance().call().then(console.log)
唉,我只得到這個空洞的回應:
Result {}
Ropsten 上沒有狀態更新。我在這裡缺少什麼嗎?
試試這個:
`contract.methods.refundBalance().send().then(console.log)`.
call
用於不改變狀態的函式。它們被定義為view
orpure
。但是,refundBalance()
確實改變了狀態。因此,使用send