Solidity

如何在 Solidity 中獲取給定代幣合約地址和錢包地址的代幣錢包餘額?

  • November 10, 2022
(bool success, bytes memory data) = address(tokenContractAddress).call(abi.encodeWithSignature("balanceOf(address)", wallet address));

這是我目前的想法,我從令牌合約中呼叫 balanceOf 函式,但它似乎不起作用。我可以知道我的程式碼是否有任何問題,或者應該以其他方式完成嗎?

只需從 OpenZeppelin 導入IERC20介面,然後執行以下操作:

IERC20(contractAddress).balanceOf

正如 Paul 所說,你可以使用介面,當然如果 Token 的合約是基於 ERC20(或其他類似的 Erc1155)。這是最佳實踐

引用自:https://ethereum.stackexchange.com/questions/139140