Я пытаюсь вернуть имя пользователя из структуры в отображении, и я получаю эту ошибку: Ошибка: параметр "undefined" должен быть допустимой строкой HEX.
contract UserStorage is BaseStorage {
event UserCreated(string _message);
struct Profile {
uint userId;
bytes32 username;
}
mapping(address => Profile) public profiles;
mapping(address => bool) public addresses;
mapping (bytes32 => uint) public usernames;
uint latestUserId = 0;
function createUser(
address _address,
bytes32 _username
) public onlyControllerAddr returns(uint) {
latestUserId++;
profiles[_address] = Profile(
latestUserId,
_username
);
addresses[_address] = true;
usernames[_username] = latestUserId;
emit UserCreated("Membership Confirmed");
return latestUserId;
}
}
class UserAccount extends React.Component {
state = { dataKey: null };
componentDidMount() {
const { drizzle, drizzleState } = this.props;
const contract = drizzle.contracts.UserStorage;
const account = drizzleState.accounts[0];
const dataKey = contract.methods['profiles'].cacheCall(account);
this.setState({ dataKey });
}
render() {
const { UserStorage } = this.props.drizzleState.contracts;
const displayData = UserStorage.profiles[this.state.dataKey];
const user = displayData && displayData.value[1];
const username = Web3.utils.hexToUtf8(user);
console.log(user);
return (
<div>Hello: {user}</div>
)
}
}
export default UserAccount;
Здесь являются значениями, которые возвращаются:
пользователь: 0x426f6200000000000000000000000000000000000000000000000000000000000000000000000000000000000000
const displayData: {аргументы: аргументы (1), fnIndex: 6, значение: результат, ошибка: 0226166e6ee0: аргументы: аргументы: 0466Ee0: аргументы: 0: 466Ee0: аргументы: нуль: 11616Ee0: аргументы: нуль: 11616Ee0: аргументы: нуль: 11616Ee0: аргументы: нуль: 11616Ee0: аргументы: null: 116: E6ee: 0): возвращаемые значения: null: 0: 466e6: 0e6: 0: e6ee0: 0: E6: E6ee6: 0: E6: E6: E6: EE. ", вызываемый: (...), символ (Symbol.iterator): ƒ] ошибка: nullfnIndex: 6значение: результат {0:" 1 ", 1:" 0x426f6200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 } proto : Объект