在钱包上支持ERC1155,只有账户地址的情况下没办法获取该地址所持有的token id,
获取token余额必须要知道account和tokneid,所以先要知道该账号有的tokenid
function balanceOf(address account, uint256 id) public view override returns (uint256) {
require(account != address(0), "ERC1155: balance query for the zero address");
return _balances[id][account];
}
存储结构为mapping,没有数组,无法通过遍历获取
// Mapping from token ID to account balances
mapping (uint256 => mapping(address => uint256)) private _balances;
有什么办法可以显示一个账号下的所有ERC1155 token
自己搞合约的话,参照:https://github.com/0xcert/ethereum-erc721