【问题标题】:Whats is the best way to create a model of a user in swiftUI什么是在 swiftUI 中创建用户模型的最佳方法
【发布时间】:2021-10-01 04:51:33
【问题描述】:

我正在尝试创建一个模型来表示我从 api 获得的用户数据,但数据是 json 格式,结构是这样的:

这就是我构建用户模型的方式:

用户模型类:

然后由于地址由孩子组成,我为它创建了一个不同的模型,如下所示:

所以对于用户的地址,它是类型地址,然后具有适当的变量,同样适用于公司和地理位置。

我不确定这是否是表示此数据的正确方法,因为我不断收到“用户不符合可解码协议”

而且我在地址变量上也遇到了这个错误: "无法自动合成 'Decodable',因为 'Address' 不符合 'Decodable'"

我能解决这个问题的最佳方法是什么?

【问题讨论】:

  • 尽量不要发布代码图片。

标签: ios json swift xcode api


【解决方案1】:

当您想使用可编码的自动实现时,父 codable 中的所有类型也应符合 codable

在您的情况下,由于您希望 User 是可编码的,因此以下所有内容也应该是可编码的:

Int
String
Address
Company

几乎所有默认标准类型都预先符合可编码。所以你只需要使 AddressComapny 符合那个。

请注意,这对所有类型都越来越深入。例如,当您尝试符合 Address 时,GeoLocation 也应该是 Codable

【讨论】:

    猜你喜欢
    • 2015-10-15
    • 1970-01-01
    • 2010-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多