仿PancakeSwap前端 vue版本

  • i am duck
  • 更新于 2021-12-29 17:45
  • 阅读 5679

Vue版Swap

😄 肝了好久 肝了一个仿PancakeSwap的闪兑前端

市面上大部分dapp都是由React开发,不想学React只能自己肝一个Vue项目了。也给用Vue开发的朋友一些分享。

奈何我不会react, 无法拿开源代码直接用,只能看着源码一点一点肝出Vue版本,核心js慢慢肝出来的。

该JieSwap用的是PancakeSwap主网的合约,在这里闪兑相当于在Pancake的池子闪兑,如有错误,不负责任。

开发须知

首先要了解AMM的概念,动手体验一下什么是闪兑。 可以在SushiSwap切换测试网即可体验。https://app.sushi.com/swap

需要大概了解uniswap的合约源码,知道他的闪兑逻辑,Pair池子的概念,池子的定价等

项目前端源代码

https://github.com/Sexy-J/JieSwap

前端网站

部署在免费的服务器https://jieswap-x4uvs6eu-sexy-j.4everland.app/#/swap

目前核心功能 闪兑

支持多路径闪兑,中间路径可能有BNB,USDT,BUSD

支持普通ERC20,燃烧型ERC20 闪兑

支持查看在本网站的交易记录

这三个功能也是项目的难点

多路径

首先要先筛选出所有的路径,然后查询路径中每个池子的reserve,再通过输入或者输出 计算中每一条路径的输入或者输出,选择最优解。

燃烧型ERC20 闪兑

默认使用普通的swap方法,如果普通的swap方法报错,则使用支持燃烧币swap方法再调用一遍。

查看交易记录

当用户进行授权,交易等操作时,一旦得到hash就立马存入localstoage,然后每6秒去查询当前区块,如果当前区块发生变化,则去查询一遍所有的未完成的交易记录

点赞 10
收藏 11
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

20 条评论

请先 登录 后评论
i am duck
i am duck
免费批量转账工具,https://www.ducks.life/