Как мне получить массив из умного контракта, используя cacheCall ()? - PullRequest
0 голосов
/ 09 января 2020

Допустим, в моем smartcontract есть массив, который выглядит так 1007 * Как я могу получить все предметы в employees, если я не знаю, сколько их там?

1 Ответ

1 голос
/ 16 января 2020

Если вы используете версию твердости выше 0,6, ABIEncoderV2 больше не считается экспериментальным. Github Solidity 0.6 Release

С новым энкодером вы можете возвращать динамические c массивы и структуры.

pragma solidity >=0.6.0;
pragma experimental ABIEncoderV2;


contract SomeContract {
    string[] public employees;

    function getAllEmployees() public view returns (string[] memory) {
        return employees;
    }
}
...