简单传输在注入的 Web3 中不起作用

问题描述 投票:0回答:1

我有一个非常简单的 solidity 函数,仅用于将一些以太币从一个地址转移到另一个地址

function transferEtherTo(address _to) payable public {
    _to.transfer(address(this).balance);
}

在混音中,当我只是在 Javascript VM 上时,它可以正常工作

但是当我切换到注入的 web3 时,我遇到了一些意想不到的错误。

对于一个人,我的元掩码显示以太币将发送到合约的地址,而不是我试图将其发送到的地址,加上元掩码中的值由于某种原因为 0,而我试图发送总合同余额我确定是 5 个以太币。

这是我的控制台中记录的内容:

交易到 SimpleDapp.transferEtherTo 错误:错误:错误: [ethjs-rpc] 有效负载的 rpc 错误 {“id”:41874278090,“jsonrpc”:“2.0”,“参数”:[“0xf88a2b8501a13b860082786c9459a42535f42048040c3f5a1152c94af40c7169db80a45c4bade100000000000 0000000000000c5fdf4076b8f3a5357c5e395ab970b5b54098fef822d46a09f632a5dbe56be62a9c245f23fa62d9fd8aee230bbda026c6d5822339d2bf9b3a01b4a 248bca87bcb491f6f11a572bf158ba86459336e5b1b7eb91f1dda5fde87d"],"方法":"eth_sendRawTransaction"} 错误:处理事务时出现 VM 异常:gas 耗尽

知道为什么这在 JavacsriptVM 中工作正常而不是在注入的 web 3 中工作吗?

javascript ethereum solidity web3js
1个回答
-1
投票

我不认为你需要做 address(this).balance -- 只做 this.balance

© www.soinside.com 2019 - 2024. All rights reserved.