我是区块链开发的新手,对Uniswap/sushiswap/pancakeswap/等项目感兴趣已有一段时间了。
我正在尝试建立我自己的项目作为一个学习练习。我已经部署了合同萎缩,并可以看到,我的令牌在我的前端零供应。
我的问题是,如何与造币券合约进行交互,创建流动性池等?我是否编写了一个js文件,利用web3调用那些函数,如mint()和createPair()?
发布于 2021-03-17 05:40:19
DEX本质上允许您交换令牌并创建流动性池,这意味着您一般不会创建(薄荷)新令牌。只有当DEX有押注的可能性时,您才可以创建LP令牌(流动性池令牌),并将它们发送给标准令牌以交换它们。
如果合同是在etherscan.io中验证的,您可以直接调用它们的函数,而不需要任何开发。您只需要知道契约地址、要调用的函数以及预期的值。
另一方面,您可以使用诸如web3.js或ethers.js之类的库通过前端或后端与契约进行交互。
在Uniswap中,大多数功能都可以通过Router02合同获得。例如,如果您必须创建一个流动性池,那么您应该调用这个函数(如果它不存在,它将创建一个新的对):
function addLiquidity(
address tokenA,
address tokenB,
uint amountADesired,
uint amountBDesired,
uint amountAMin,
uint amountBMin,
address to,
uint deadline
) external returns (uint amountA, uint amountB, uint liquidity);尽管如此,如果你是新的区块链,这是有点挑战性的开始,从一个DEX。也许您可以使用简单的ERC20契约、传输令牌、遍历数组、访问映射、在web3.js中开发代码来从契约中读取和写入值等等,这样就可以更容易地遵循DEXes的核心功能。
https://ethereum.stackexchange.com/questions/94760
复制相似问题