![](/img/trans.png)
[英]How to input data to a solidity smart contract function from Javascript?
[英]How to use overloaded function from smart contract with wagmi?
所以我有兩個 function 在我的solidity智能合約functionName(args1)
和functionName(args1, args2)
中具有相同的名稱但不同的參數
並且由於這個 function 重載,智能合約的 ABI 有 2 個 function 名稱完全相同, functionName
有 1 個參數, functionName
有 2 個 ZDBC11CAA5BDA99F77E6FB4DAD882E
當我嘗試使用 wagmi useContractWrite 調用第一個 function 時:
const functionWrite = useContractWrite({
...ContractInstance,
functionName: 'functionName',
args: [args1],
});
或致電第二個 function
const functionWrite = useContractWrite({
...ContractInstance,
functionName: 'functionName',
args: [args1, args2],
});
由於名稱重復,wagmi 似乎沒有檢測到 function,它給了我這個錯誤: 'functionName' doesn't exist in interface for contract "{my contract address}"
有誰知道如何將重載的 function 與 wagmi 一起使用?
我一直在尋找這個,只是做了一些試驗和錯誤來弄清楚。 自從我得到它的工作,我想我會回來給你和其他人一個答案。
const functionWrite = useContractWrite({
...ContractInstance,
functionName: 'functionName(arg1Type, arg2Type)',
args: [args1, args2],
});
這應該將 function 簽名傳遞給底層的 ethers 調用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.