繁体   English   中英

uniswap V2 JSBI 负值的无效 BigNumber 值

[英]uniswap V2 invalid BigNumber value for JSBI negative value

嗨,我正在关注 uniswapV2 文档来执行交易交易,但遇到错误,因为遵循无效的 bignumber 值

我的输入量为 2941991120,在 JSBI 形式中为 -1352976176,这给了我无效的 bignumber 值错误。 这是我的代码代码截图 但我完全按照教程所说的https://uniswap.org/docs/v2/javascript-SDK/trading/

谁能告诉我我哪里做错了?

该示例告诉您该值应转换为十六进制:

const value = trade.inputAmount.raw // // needs to be converted to eg hex

其他值之一相同。 你试过这个吗?

如果您使用(有符号)整数,则其符号可以是正/负 ( + / - )。 您发送的任何值都被视为负值,这是出乎意料的,因此响应会告诉您。

这个例子似乎表明你可以这样做: https : //ethereum.stackexchange.com/questions/87983/failed-transaction-error-encountered-during-contract-execution-on-uniswap-rout

...
const amountOutMinHex = ethers.BigNumber.from(amountOutMin.toString()).toHexString();
...

接受的答案是不必要的复杂。 JSBI::toString()方法采用 radix 参数,因此您的链接示例看起来像:

trade.minimumAmountOut(slippageTolerance).raw.toString(16);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM