有以下代码:
struct UserScore {
address user;
uint score;
uint time;
}
function getWithStruct(UserScore _user) public view returns (address, uint, uint) {
return (_user.user, _user.score, _user.time);
}目前,元问题似乎不支持这个特性。但有解决办法吗?对于我来说,有元for的用户有必要以结构化的形式传输签名数据。我能为它做什么?
发布于 2019-05-28 13:31:15
您可以简单地通过使用映射并从类似于此的struct映射值返回,而不需要使用ABIEncoderV2:
代码:
struct UserScore {
address user;
uint score;
uint time;
}
mapping(address=>UserScore) public userscore;
function addUserScore(address _user, uint _score, uint _time)public returns (bool success){
userscore[msg.sender] = UserScore(_user,_score,_time);
return true;
}
function getWithStruct(address _userAdress) public view returns (address, uint, uint) {
return (userscore[_userAdress].user, userscore[_userAdress].score, userscore[_userAdress].time);
}希望这能帮到你。
https://ethereum.stackexchange.com/questions/71192
复制相似问题