在struct中获取嵌套对象的路径

时间:2018-04-30 10:02:03

标签: ios swift codable keypaths

我需要检索嵌套对象的路径。

假设我的模型看起来像这样:

struct Model: Codable {
    struct ModelB: Codable {
        let props: [ModelC]
    }
    struct ModelC: Codable {
       let prop: Int
    }

    let modelB: ModelB
}

然后我有我的实例:

let model = Model(modelB: Model.ModelB(props: [Model.ModelC(prop: 1),
                                               Model.ModelC(prop: 2),
                                               Model.ModelC(prop: 3)]))

现在我想在ModelB props中获取元素的路径 做类似的事情:

print(model.modelB.props[0].path)

我期待的道路应该是这样的:

  

“modelB /道具/ 0 / modelC”

其中0props数组中元素的位置。

无论如何通过使用CodingKeyKeyPath来实现这一目标?

0 个答案:

没有答案