怎么在创建交易对之前获取pancakeswap的pair

/ 默认分类 / 0 条评论 / 1700浏览

获取pancakeswapPancakeFactory的地址

查看pancakeswapINIT_CODE_HASH

https://github.com/pancakeswap/pancake-swap-sdk/blob/7d81106174e16d1f1c6c91a93558736282a39ec1/src/constants.ts#L24

或者是找到对应的PancakeFactory的合约变量INIT_CODE_PAIR_HASH

https://bscscan.com/address/0xca143ce32fe78f1f7019d7d551a6402fc5350c73#readContract

tokenAtokenB可以不按顺序,下面已经排好了

contract GetPair {

    function _getPair(address tokenA, address tokenB) public pure returns(address) {
        address factory = 0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73;

        (address token0, address token1) = tokenA < tokenB ? (tokenA, tokenB) : (tokenB, tokenA);
        address pair = address(uint(keccak256(abi.encodePacked(
        hex'ff',
        factory,
        keccak256(abi.encodePacked(token0, token1)),
        hex'00fb7f630766e6a796048ea87d01acd3068e8ff67d078148a3fa3f4a84f69bd5'
        ))));
        return pair;
    }
}