[英]Unable to send ether to contract
我是 Solidity 的新手,我正在尝试构建一个简单的智能合约并在此过程中探索 solidity。 可以在不输入值的情况下编译以下构建,但是当我尝试在其中输入一些值时,它会显示以下错误。
交易已恢复至初始state。注意:被叫function需要支付,如果您发送价值,您发送的价值应小于您当前的余额。 调试事务以获取更多信息。
代码:
pragma solidity ^0.8.0;
contract SimpleBank {
string public name;
address public owner;
mapping (address => uint256) public funds;
address[] public funders;
constructor() {
owner = msg.sender;
}
modifier onlyOwner{
require(msg.sender == owner);
_;
}
function getBalance() public view returns (uint256){
return owner.balance;
}
function getAddress() public view returns(address){
return owner;
}
function RecieveMoney() public payable{
funds[msg.sender] += msg.value;
funders.push(msg.sender);
}
}
您可能在应付字段中输入的金额大于您帐户的当前余额。 代码中没有错误。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.