关注Smart Contract Integration / Implement a Swap,我的联系人喜欢下面
contract UniDemo {
function swapTokensForETH(uint amountIn, uint amountOutMin, uint deadline) public payable returns(uint) {
// transfer
require(Token.transferFrom(msg.sender, address(this), amountIn), 'transferFrom failed.');
// approve
require(Token.approve(UNISWAP_ROUTER_ADDRESS, amountIn), 'approve failed.');
// swap
uint[] memory outs = uniswapRouter.swapExactTokensForETH(amountIn, amountOutMin, getPathForTokenToETH(), msg.sender, deadline);
return outs[1];
}
}我一直收到EVM恢复错误,这是不是出了什么问题?
发布于 2020-08-23 01:10:28
看起来您没有收到来自路由器(uniswapRouter)的任何响应,因此由于您的outs数组为空,因此return outs[1]抛出一个revert错误。
https://stackoverflow.com/questions/63258368
复制相似问题