首页 > 解决方案 > 在solidity中使用struct内部的数组

问题描述

我有一个如下结构:

struct Document {
    address[] haveAccess;
}

mapping(uint => Document) public documents;
address[] public arr;

 constructor() {
    documentsCount++;
    documents[documentsCount] = Document(arr);
 }

从 truffle 编译后从 web3 js 访问不会返回地址数组haveAccess。即使是空数组也不会返回。web3 调用是这样的

instance.documents(0).then(document=>{
    //dosomething with document
});

我需要访问数组 haveAccess。

标签: solidityweb3js

解决方案


尝试用括号而不是方括号调用。而且您还需要添加.call. 看看这里


推荐阅读