我有一个名为"fruit"的核心数据实体。我有一个名为"fruitName"的水果属性,其类型为String。我希望在TextField()中而不仅仅是Text()中显示此属性,以便用户可以更轻松地编辑此属性。我在将TextField中的text参数绑定到fruit.fruitName时遇到问题。
下面是代码:
import CoreData
struct FruitRowView: View {
//instance of core data model
@ObservedObject var vm: CoreDataViewModel
var fruit: FruitEntity
var body: some View {
TextField("Enter fruit name", text: $fruit.name)
}
}
当我试图构建时,得到的错误是:'Cannot find' $fruit 'in scope'我认为这意味着我不能用这种方式绑定变量。我确信有一种简单的方法可以解决这个问题,这样我就可以在TextField中显示这个属性,但我还没有弄清楚。
1条答案
按热度按时间pgx2nnw81#
要“...将文本域文本绑定到coredata属性”,可以尝试这种方法,声明
@ObservedObject var fruit: FruitEntity
。由于CoreData使用可选项,因此还需要测试非空值,如代码所示。