我正在尝试解析以下json模式,海报可能为空。
我的问题是如何使海报可选? 我的想法是我需要一个可失败的初始化程序,但是decodable要求一个抛出异常的init。
{
"poster": {},
"recommends": []
}
我的可解码类如下:
public struct RecommendedList: Decodable {
public let poster: Poster?
public let recommends: [Recommend]
}
public struct Poster: Decodable {
public let backgroundImage: URL
public let topImage: URL
public let windowImage: URL
public let windowSkinImagePath: URL
public let deeplink: URL
public init(from decoder: Decoder) throws {
// I want a failable intializer not one that throws
}
}
我的问题是如何使海报可选? 我的想法是我需要一个可失败的初始化程序,但是decodable要求一个抛出异常的init。
[Codable]
属性怎么办? - zrslvCodable
协议的类对象也是Codable
的,而且你可以在你的结构体/类/任何地方拥有一个[Codable]
属性。好的,我认为我们正在讨论一个已经被回答了(有点)的问题:https://dev59.com/XlYO5IYBdhLWcg3wHd9o - zrslv