【问题标题】:Swift - Looping over a struct arraySwift - 遍历结构数组
【发布时间】:2021-03-01 03:35:43
【问题描述】:

这是非常基本的,我有点不好意思问,但是...我正在从我的服务器检索一些 JSON 到这些结构中:

struct CategoryInfo: Codable {
    var categoriesResult: [CategoryDetail]
}

struct CategoryDetail: Codable{
    var categoryName: String
    var categoryDescription: String
    var categorySortOrder: Int
    var categoryId: String
}

现在我想为这几十个事件中的每一个循环遍历 CategoryDe​​tail,将它们保存到 CoreData。我目前的尝试是这样的:

            let decoder = JSONDecoder()
            do {
                let categories = try decoder.decode(CategoryInfo.self, from: data!)
                for category in [CategoryDetail] {
                    //... perform the CoreData storage here
                }

但是我收到 CategoryDe​​tail 不符合 Sequence 或 IterateProtocol 的错误,但是当我尝试实现这些时,坦率地说,解决方案显得太复杂了。它只是一个数组......我不应该能够在没有很多hoohaw的情况下循环它吗(当然,在技术意义上使用它)?

【问题讨论】:

    标签: json swift struct


    【解决方案1】:

    请仔细看看你的结构

    您正在解码CategoryInfo 结构

    let categoryInfo = try decoder.decode(CategoryInfo.self, from: data!)
    

    类别在categoriesResult成员中

    for category in categoryInfo.categoriesResult {
        //... perform the CoreData storage here
    }
    

    【讨论】:

    • 谢谢你,瓦迪安。我出去散步,想了想我做错了什么——正如你所说。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-02
    • 1970-01-01
    相关资源
    最近更新 更多