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
}
我需要 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
}