如何解决对于 Codable Struct,由于“私有”保护级别,“CodingKeys”无法访问
我想检查打印语句是否打印“Key: messageTimestamp”,以便我可以定义let disucssionMessageTimestampKey = discussionMessage.CodingKeys.messageTimestamp.stringValue
。但我收到错误 'CodingKeys' is inaccessible due to 'private' protection level
。当我尝试访问定义结构的文件或其他文件中的 CodingKeys
时,出现此错误。我错过了什么?有没有办法访问默认的 CodingKeys
?
struct discussionMessage: Codable {
let message,userCountryCode,userCountryEmoji,userName,userEmailAddress: String
let messageTimestamp: Double
let fcmToken,question,recordingUrl,profilePictureUrl: String?
}
let disucssionMessageTimestampKey = "messageTimestamp"
print("Key: ",discussionMessage.CodingKeys.messageTimestamp.stringValue)
解决方法
我正在使用以下代码。不是最理想的解决方案,如果我可以访问默认的 CodingKeys
struct DiscussionMessage: Codable {
let message,userCountryCode,userCountryEmoji,userName,userEmailAddress: String
let messageTimestamp: Double
let fcmToken,question,recordingUrl,profilePictureUrl: String?
enum CodingKeys: CodingKey {
case message,userEmailAddress
case messageTimestamp
case fcmToken,profilePictureUrl
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。