Arrays

從公共結構映射訪問數組?

  • January 13, 2022

我有這個結構:

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,響應不包括數組radialGradientCenterPctgradientColors.

理想情況下,我不會有一個單獨的吸氣劑,所以我很好奇這是否是一個真正的限制,或者我是否犯了一個錯誤。

這取決於您的 Solidity 版本,因此分享它可能會有所幫助。有幾個問題的答案可能會有所幫助:

引用自:https://ethereum.stackexchange.com/questions/118837