我正在开发一个SWIFT包,其中的一个选项是传入一个泛型类型(Person
),然后GenericStruct
可以使用传入的该类型的属性.显然,问题是通用T
不知道传入的是什么.Is there a way to define the property to access on the generic type 102?
struct Person: Equatable {
var name: String
var height: Double
}
struct ContentView: View {
@State private var james = Person(name: "James", height: 175.0)
var body: some View {
GenericStruct(person: $james)
}
}
struct GenericStruct<T: Equatable>: View {
@Binding var person: T
var body: some View {
Text(person.name)) // This line.
}
}
我希望在将Person
传递给GenericStruct
时明确传递要访问的属性.该属性不会始终为name
,它可以是我定义的Person
内的任何值.例如:
GenericStruct(person: $james, use: Person.name)