Swift 符合可识别现有 属性

Swift Conform to Identifiable with existing property

我需要 ForEach 一个结构数组,因此它们每个都必须符合 Identifiable 协议。但是由于这些结构是从获取的 JSON 中解码出来的,它们已经有一个 ID 属性——我的数据库中使用的 ID。我应该给他们另一个 UUID 来满足 Identifiable 协议吗?如果没有,我如何使用现有的 属性 作为 id?

struct Event: Codable, Identifiable {
    let eventID: String
    let description: String
    let date: String
    let location: String
    let hostID: String
    let hostName: String

    // need?
    let id = UUID()
}

使用计算的 属性 到 return 现有的 属性 作为 ID:

struct Event: Codable, Identifiable {
    let eventID: String
    //...other properties
    
    var id: String { eventID } //or whatever
}