Arrays
從公共結構映射訪問數組?
我有這個結構:
struct Amendment { string text; uint24 textColor; bool isRadialGradient; uint8[2] radialGradientCenterPct; uint16 linearGradientAngleDeg; uint24[2][11] gradientColors; uint messageId; uint inReplyToMessageId; address sender; address recipient; uint sentAt; }
這個映射:
mapping(uint => Amendment) public amendmentMapping;
這個功能:
function getAmendment(uint tokenId) public view returns (Amendment memory amendment) { return amendmentMapping[tokenId]; }
當我通過此功能檢索修訂時,它可以正常工作。但是,當我通過直接獲得修正時
amendmentMapping
,響應不包括數組radialGradientCenterPct
和gradientColors
.理想情況下,我不會有一個單獨的吸氣劑,所以我很好奇這是否是一個真正的限制,或者我是否犯了一個錯誤。
這取決於您的 Solidity 版本,因此分享它可能會有所幫助。有幾個問題的答案可能會有所幫助: