我正在构建一个简单的交易所,在那里你可以买卖虚构的代币,现在正在使用sell功能,但当我试图使用msg.sesender.transfer(ethAmount(将eth转移到发送方时;它说地址需要付款,所以我把它包裹在付款中,如下所示:
function sellTokens(uint _amount) public {
uint etherAmount = _amount /rate;
token.transferFrom(msg.sender, address(this), _amount);
payable(msg.sender).transfer(etherAmount);
}
}
但现在我在尝试使用truffle:编译它时遇到了这个错误
ParserError:需要主表达式。payable(msg.sender(.transfer(etherAmount(;^-----^
如果有任何帮助或建议,我将不胜感激!
作为参考,我使用的所有版本都是:节点v16.13.1松露v.1.14实用主义稳固性>0.5.0<0.9.0;
i通过求解
函数sellToken(uint_amount(公共应付{uint-etherAmount=_amount/rate;
address payable owner = msg.sender;
token.transferFrom(msg.sender, address(this), _amount);
owner.transfer(etherAmount);
}