如何在不到一小时内建立像Uniswap一样的去中心化

时间:2021-09-03 10:59编辑:mozhe来源:网络整理当前位置:主页 > 加密货币 >

如何在不到一小时内建立像Uniswap一样的去中心化交易所(DEX)建立 Uniswap 交易所很简单。首先,我们需要三组代码:工厂合同,路由合约,前端代码。然后Factory Contract 用于创建 LP 代币,它将为每对交换创建一个 LP 代币。路由合约是用户调用的与工厂合约进行交互的合约。

该 工厂合同的源代码可以在这里找到:  https://etherscan.io/address/0x5c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f#code

如果您不是在以太坊主网络上部署代码,则需要在上述源代码的第 398 行之后添加以下行:


我们建议您使用 Remix,如果您不熟悉它,  Blockchain.News之前发布了使用 Remix 的指南。

在部署合约之前,我们必须编译合约。转到 Soliditory Compiler,为 EVM 版本选择“Istanbul”,为 Compiler Configuration 勾选“Enable optimization”,然后单击“Compile”按钮。

然后,转到 Deploy & Run Transaction,在合约下选择“UniswapV2Factory - browser/xxx.sol”。

部署合约需要_feeToSetter的参数 ,它是合约的管理者。地址有权决定谁可以从运行此交易所中获得费用。

合约部署完成后,有两个步骤:

1. 执行函数调用 setFeeTo分配一个地址来接收交易费用。

2.调用INIT_CODE_PAIR_HASH的值并记录下来,我们以后需要。

您可以找到INIT_CODE_PAIR_HASH的值, 如下图所示。

然后我们处理路由合约, 路由合约源码可以在这里获取:https :  //etherscan.io/address/0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D#code

在第 700 行搜索代码:

我们需要用我们从工厂合约INIT_CODE_PAIR_HASH 中获得的哈希值替换哈希值 。然后可以部署合约。 需要两个参数:

我们刚刚部署的工厂合约地址

WETH地址

什么是 WETH?

Uniswap 交易所适用于 ERC20 代币,但 ETH 不是 ERC20。因此,交易所需要一个 WETH 转换器将 eth 转换为 ERC20 标准的 WETH。汇率固定为1比1。根据您使用的网络,选择下面的WETH地址作为输入参数。

我们编译部署好路由合约后,记得记下合约的地址和init hash code。

下一步是处理代码的前端:

我们可以通过以下命令下载前端的代码:

合约地址需要替换,我们需要替换/uniswap-interface/hide/constants/index.ts第6行的router合约地址

我们还需要搜索工厂地址和初始化哈希码以进行替换。确保 node_module/@uniswap 中的代码也被替换。

毕竟,替换,在你的 GitHub 上创建一个存储库。并在前端代码文件夹中输入以下命令。

然后编辑package.json,将主页的值替换为https://用户名.github.io/项目名称。保存文件后,输入以下命令,

一切完成后,您可以通过https://用户名.github.io/项目名称 和MetaMask 钱包访问您的交易所 。

上一篇如何使用Uniswap分步指南 Uniswap交易所app教程

下一篇Alexander Koppel,RiddleCode首席执行官:关于“机器身

热点资讯

精选资讯