您好,我有一个关于确认协议“Hashable”的问题。实在是太烂了。这是我的模型:
struct Page: Decodable, Identifiable {
var id: String
var name: String
var thumbnail: String?
var description: String
var type: String
var speechs: [String]
}
struct ExploreDataSource: Decodable, Hashable {
var title: String
var data: [Page]
}
Run Code Online (Sandbox Code Playgroud)
这是我的ForEach代码:
List {
ForEach(self.VM.dataSource, id: \.self) { item in
Text(item.title).bold().font(.system(size: 22.0))\
}
}
Run Code Online (Sandbox Code Playgroud)
错误:
类型“ExploreDataSource”不符合协议“Equatable”。您想添加协议存根吗?类型“ExploreDataSource”不符合协议“Hashable”
gra*_*han 11
您的Page结构不符合Hashable各自Equatable,因此ExploreDataSource不能符合其中Hashable任何一个。
所以我的建议是让你也Page遵守。Hashable
struct Page: Decodable, Identifiable, Hashable {
...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10773 次 |
| 最近记录: |