我有一个选择器来选择类别。每个类别都有一个ID属性,该属性是一个字符串。这确实显示了正确的初始值。但是,如果我打开选择器并选择一个新值,categoryId
将永远不会更新。
@EnvironmentObject var data: TransactionData
@State var categoryId: String = ""
var body: some View {
Form {
Section {
Picker(selection: $categoryId, label: Text("Category")) {
ForEach(data.categories) { category in
Text(category.name).tag(category.id)
}
}
}
}
}