首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >调用的函数在撤销函数中应为payable错误

调用的函数在撤销函数中应为payable错误
EN

Stack Overflow用户
提问于 2021-02-01 01:20:45
回答 1查看 319关注 0票数 0

我有这样的功能从合同中转移令牌,我得到了错误,我应该添加支付,我不是真的明白,如果取款将取回以太或令牌?

代码语言:javascript
复制
function withdrawBalances() public nonReentrant {
            uint share = _Balances[msg.sender];
           _Balances[msg.sender] = 0;
            msg.sender.transfer(share);
        }

.withdrawBalances错误: VM错误:恢复。revert事务已恢复到初始状态。注:如果您发送了值,则应支付调用的函数,并且您发送的值应小于当前余额。调试事务以获取更多信息。

EN

回答 1

Stack Overflow用户

发布于 2021-02-01 04:57:41

当你试图发送一些Ether时,当你调用一个不能支付的函数时,就会发生这个错误。将Ether值设置为0以避免出现这种情况。您还可以通过使用payable关键字来允许函数接受Ether。

代码语言:javascript
复制
function withdrawBalances() public payable {
     ...
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65982067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档