【发布时间】:2020-03-04 10:00:09
【问题描述】:
我正在使用 swiftui 处理聊天视图。我确实有如下的可散列结构
struct ChatMessage : Hashable {
var message: String
var isMe: Bool
var avatar: String
}
它工作正常。但是,如果我将头像数据类型更改为图像,那么我会收到错误消息,因为 "Type 'ChatMessage' does not conform to protocol 'Hashable'"
struct ChatMessage : Hashable {
var message: String
var isMe: Bool
var avatar: Image
}
如何将对象(图像)包含在确认 Hashable 的结构中。
【问题讨论】:
-
我建议添加一个唯一的
id并(仅)使用它作为哈希值。 -
我认为您必须创建自己的类型,例如
HashableImage使用 Swift 的Hashable协议。这里是苹果官方文档:developer.apple.com/documentation/swift/hashable