10 solidity 合约delegatecall 吊起uniswap v3 报错

我在自己的合约中使用delegatecall的方式调用uniswap v3 router的方法失败,但是我直接在uniswap v3 router 合约中吊起对应方法可以,uniswap v3 router 是否不支持delegatecall

我的合约代码:

        bytes memory params = abi.encodeWithSignature(
                          "exactInputSingle((address,address,uint24,address,uint256,uint256,uint256,uint160))",
            IUniswapV3Router.ExactInputSingleParams(
                tokenIn,
                address(iWETH),
                fee,
                address(this),
                deadline,
                amountIn,
                amountOutMin,
                0
            )
        );

        // 使用委托代理调用 Uniswap V3 路由器的方法
        (bool success, ) = address(uniswapV3Router).delegatecall(params);

我这里不直接调用是因为如果直接调用就需要钱包先把币转到合约中,但是有的币因为有税,这样转移就会导致丢失部分代币,或者是否有其他方法可以在不转移钱包代币的情况下吊起该方法

请先 登录 后评论

最佳答案 2023-08-23 12:04

v3 不支持带税币

请先 登录 后评论

其它 1 个回答

zark
请先 登录 后评论
  • 2 关注
  • 0 收藏,2091 浏览
  • zark 提出于 2023-08-23 10:48