【发布时间】:2020-02-24 20:19:06
【问题描述】:
所以在过去的几个小时里,我一直在尝试创建一个水平卡片组,以显示我正在从事的项目的最新头条新闻。我现在所在的位置正在阻止我的整个流程,因为我的列表在我的结果结构中找不到我的 id 变量。下面我附上了代码,任何帮助将不胜感激。
HeadlinesUI.swift - Screenshot
import SwiftUI
struct Response: Codable {
var results: [Result]
}
struct Result: Codable {
var id: Int
var title: String
var header_image: String
var summary: String
}
struct HeadlineUI: View {
@State var results = [Result]()
var body: some View {
ScrollView(.horizontal) {
HStack(spacing: 20) {
List(results, id: \.id) { items in
}
.onAppear(perform: loadData)
}
}
}
func loadData() {
}
}
struct HeadlineUI_Previews: PreviewProvider {
static var previews: some View {
HeadlineUI()
}
}
【问题讨论】:
-
请不要包含您的代码的屏幕截图 - 而是将其粘贴到问题的正文中。谢谢
-
你得到了两者,这样你就可以看到相关的错误。
-
我不建议使用
Result作为类型的名称。它不仅过于笼统而无法描述(实际上任何东西都可以称为结果:数字、字符串、表格),而且它还与 Swift 标准库中构建的Result类型冲突。我认为这是造成问题的原因。 -
按照您的想法,我用文章更改了结果,但仍然出现相同的错误。
-
@thealexvond 如果你明确指定
\Article.id会发生什么?