Blockchain Solidity在移除uniswap流动性时获得eth金额

Blockchain Solidity在移除uniswap流动性时获得eth金额,blockchain,ethereum,solidity,Blockchain,Ethereum,Solidity,因此,我正在从ERC20>ETH池中移除一些流动性,但我想存储移除流动性时获得的ETH金额 function removeETHLiquidityFromToken() public { // approve token IERC20(tokenAddressLP).approve(UNISWAP_ROUTER_ADDRESS, IERC20(tokenAddressLP).balanceOf(address(this))); // remove liquidity uniswapRoute

因此,我正在从ERC20>ETH池中移除一些流动性,但我想存储移除流动性时获得的ETH金额

function removeETHLiquidityFromToken() public {

// approve token
IERC20(tokenAddressLP).approve(UNISWAP_ROUTER_ADDRESS, IERC20(tokenAddressLP).balanceOf(address(this)));

// remove liquidity
uniswapRouter.removeLiquidityETH(tokenAddress, IERC20(tokenAddressLP).balanceOf(address(this)), 0, 0, address(this), now + 20);

// I want to use the ETH value later in this function

}
这样做效果很好,它消除了流动性

function removeETHLiquidityFromToken() public {

// approve token
IERC20(tokenAddressLP).approve(UNISWAP_ROUTER_ADDRESS, IERC20(tokenAddressLP).balanceOf(address(this)));

// remove liquidity
uniswapRouter.removeLiquidityETH(tokenAddress, IERC20(tokenAddressLP).balanceOf(address(this)), 0, 0, address(this), now + 20);

// I want to use the ETH value later in this function

}
但是我怎样才能得到那个量的乙醚,这样我以后就可以用它了


该函数返回两个值<代码>外部返回(uint amountToken、uint amountth)

因此,您可以识别接收到的
uint
并按如下方式分配返回给它的第二个uint:

( ,ethReceived) = uniswapRouter.removeLiquidityETH(tokenAddress, IERC20(tokenAddressLP).balanceOf(address(this)), 0, 0, address(this), now + 20);