Solidity
從合約中獲取儲存陣列數據
我有一個儲存一系列
Proposal
資訊的solidity合約:contract Submissions { Proposal[] public proposals; struct Proposal { // .... } }
在測試中(使用松露框架),我試圖訪問提案數據:
const proposals = await Submissions.proposals();
但我得到了這個例外:
Solidity 函式的參數數量無效
我不明白這一點,因為它不是函式,因此不需要參數。在我的測試的其他地方,我已經使用這種方法成功地收集了契約數據(雖然不是用於數組)——我錯過了什麼?
為數組自動生成的getter接受一個參數:數組的索引。
所以你應該能夠呼叫
proposals(0)
,proposals(1)
等來獲取數組的成員。