我正在关注View,我需要将item
的内容传递给另一个View(DetailsEvent.swift),我正在使用NavigationLink
。 (我正在使用Xcode 11 GM)
struct Events: View {
@ObservedObject var networkManager = NetworkManager()
var body: some View {
NavigationView{
List(self.networkManager.eventos.events){ item in
NavigationLink(destination: DetailsEvent(item: item)) {
VStack(alignment: .leading) {
HStack {
Image(systemName: "calendar")
.foregroundColor(.gray)
Text(item.start_date)
.font(.subheadline)
.foregroundColor(.gray)
}
Text(item.title)
.font(.headline)
}
}
}
.navigationBarTitle("Events")
}
}
但是它给了我以下错误:
传递给不带参数的调用的参数
不传递任何变量:NavigationLink (destination: DetailsEvent ()
一切正常。
DetailsEvent.swift
struct DetailsEvent: View {
var body: some View {
Text("here details content")
}
}
答案 0 :(得分:1)
您的结构没有名为item的属性。您需要这样的东西:
struct DetailsEvent: View {
let item: Event
var body: some View {
Text("here details about \(item.title)")
}
}