我有这样的功能从合同中转移令牌,我得到了错误,我应该添加支付,我不是真的明白,如果取款将取回以太或令牌?
function withdrawBalances() public nonReentrant {
uint share = _Balances[msg.sender];
_Balances[msg.sender] = 0;
msg.sender.transfer(share);
}.withdrawBalances错误: VM错误:恢复。revert事务已恢复到初始状态。注:如果您发送了值,则应支付调用的函数,并且您发送的值应小于当前余额。调试事务以获取更多信息。
发布于 2021-02-01 04:57:41
当你试图发送一些Ether时,当你调用一个不能支付的函数时,就会发生这个错误。将Ether值设置为0以避免出现这种情况。您还可以通过使用payable关键字来允许函数接受Ether。
function withdrawBalances() public payable {
...
}https://stackoverflow.com/questions/65982067
复制相似问题