我在我的项目中使用了0xPrice和Quote,并遇到了以下问题,这可能是API中的一个bug。
象征性小数:
除其他外,答复包括下列价值:
sellAmount基于9个小数-> sellAmount / sellTokenToEthRate = 0.13476497146 ETH,这是正确的。
然而,buyAmount也是基于9个小数-> buyAmount / buyTokenToEthRate = 134141724.605,这是不正确的,9小数从正确的值。
这是个知道的问题还是我做错了什么?感谢你的帮助!
发布于 2022-04-07 13:28:04
作为临时解决办法,我使用一个乘数来计算buyAmount的eth值:
const sellTokenToBuyTokenDecimalMultiplier: BigDecimal =
new BigDecimal(`1e${sellTokenDecimals}`,)
.divide(new BigDecimal(`1e${buyTokenDecimals}`), 19);
const buyValueInEth: BigDecimal =
new BigDecimal(buyAmount.toString())
.divide(buyTokenToEthRate, 18)
.multiply(sellTokenToBuyTokenDecimalMultiplier);(提示: BigDecimal是https://www.npmjs.com/package/js-big-decimal)
https://ethereum.stackexchange.com/questions/125485
复制相似问题