0

假设我的智能合约中有一个数组,看起来像这样

string[] public employees;

employees如果我知道索引,我就可以从中获取数据,就像这样

contract.method["employees"].catchCall([i]); // i is the index

employees如果我不知道有多少物品,我应该怎么把所有物品都放进去?

4

1 回答 1

1

如果您使用 0.6 以上的solidity 版本,ABIEncoderV2 不再被认为是实验性的。 Github Solidity 0.6 发布

使用新的编码器,您可以返回动态数组和结构。

pragma solidity >=0.6.0;
pragma experimental ABIEncoderV2;


contract SomeContract {
    string[] public employees;

    function getAllEmployees() public view returns (string[] memory) {
        return employees;
    }
}
于 2020-01-16T10:33:45.840 回答