0
我試圖延長NSManagedObjectContext
並從中實例化一個對象如下:爲什麼NSManagedObjectContext在擴展時返回null?
extension NSManagedObjectContext {
func persist(block: @escaping()->Void) {
perform {
block()
do {
try self.save()
} catch {
self.rollback()
}
}
}
}
並在控制器:它打印,但不經過
var managedObjectContext: NSManagedObjectContext?
func saveFamilyMember(withName name: String) {
guard let moc = managedObjectContext
else { return }
moc.persist {
let familyMember = FamilyMember(context: moc)
familyMember.name = name
print("xxxxxxxx")
}
}
當我打印線guard let moc
之前。它不會返回任何錯誤,因爲它安全地解包但不起作用。
你在哪裏給'managedObjectContext'變量賦值? –
@TomHarrington我沒有給它賦值。我必須分配什麼價值才能發揮作用? –