调用的合约函数的参数是一个tuple类型,在buildTrans的时候,如何设置?

ABI = json.loads('[{"inputs":[{"components" : {"internalType":"address","name":"newOwner","type":"address"}, "internalType":"struct hello", "name":"train", "type":"tuple"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]')

中间省略。。。

hisTrans = ConnectNode.eth.getTransaction('0x102dc724f8612d873c82446dfa28bcc162459c07f7ca8ff736344b2681963815')

parameter = tuple('0xc30141b657f4216252dc59af2e7cdb9d8792e1b0') airDropTx = airDrop.functions.transferOwnership(parameter).buildTransaction({'chainId':hisTrans['chainId'], 'gas':hisTrans['gas'], 'maxFeePerGas': hisTrans['maxFeePerGas'], 'maxPriorityFeePerGas': hisTrans['maxPriorityFeePerGas'], 'nonce': ConnectNode.eth.get_transaction_count(myAccount['addr'])})

请问一下这里的parameter应该怎么设置?

请先 登录 后评论

最佳答案 2022-07-11 22:21

transferOwnership({train:{newOwner:'0x00000....'}})

这么传就可以了

请先 登录 后评论

其它 2 个回答

Tiny熊
  擅长:智能合约,以太坊
请先 登录 后评论
godreameng
请先 登录 后评论
  • 3 关注
  • 0 收藏,3082 浏览
  • godreameng 提出于 2022-07-07 22:19