【问题标题】:No matching parameters没有匹配的参数
【发布时间】:2022-06-14 23:36:50
【问题描述】:
if int(f.json()["inputAmount"]) != 0:
    nonce = w.eth.get_transaction_count(acc)
    router = w.eth.contract(address=a, abi=abi)


    txn = router.functions.swapExactTokensForTokens(
        aIn,  # Amount in uint256
        0,  # Min amount out uint256
        poolPath,  # address[] calldata poolspath
        tokenPath,  # IERC20[] calldata path
        acc,  # address to
        int(time.time()) + 1000,  # deadline uint 256
    ).buildTransaction(
        {
            "from": acc,
            "value": aIn,
            "gas": int(f.json()["totalGas"]),
            "gasPrice": int(w.eth.generate_gas_price()),
            "nonce": nonce,
        }
    )
    sgnTxn = w.eth.account.sign_transaction(
        txn,
        private_key=acc1,
    )
    txn_token = w.eth.sendRawTransaction(sgnTxn.rawTransaction)
    print(txn_token)
else:
    print("no swap!")

web3.exceptions.ValidationError: 无法识别名称为 swapExactTokensForTokens、类型为 (<class 'int'>, <class 'int'>, <class 'list'>, <class 'list'>, <class 'str'>, <class 'int'>) 的位置参数和类型为 {} 的关键字参数的预期函数。 找到 1 个名称为 swapExactTokensForTokens 的函数:swapExactTokensForTokens(uint256,uint256,address[],address[],address,uint256) 由于没有匹配的参数类型,函数调用失败。

【问题讨论】:

  • 如果您可以添加代码的 sn-p 以便我们提供帮助,那就太好了
  • IDK 为什么参数不匹配或问题在其他地方仍然存在,欢迎任何帮助。

标签: javascript solidity web3js


猜你喜欢
  • 2018-04-18
  • 2013-10-22
  • 1970-01-01
  • 2023-01-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-16
  • 1970-01-01
相关资源
最近更新 更多