嗨,我正在关注uniswapV2文档以执行贸易交易,但遇到错误,如下invalid bignumber value
我得到的输入金额为2941991120,而在JSBI格式中为-1352976176,这给了我无效的bignumber值错误。这是我的代码code screenshot。但是我完全按照本教程所说的https://uniswap.org/docs/v2/javascript-SDK/trading/
谁能告诉我我做错了什么?

最佳答案

该示例告诉您该值应转换为十六进制:const value = trade.inputAmount.raw // // needs to be converted to e.g. 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();
...

09-25 20:12