【问题标题】:Use of instance member '' on type '''; did you mean to use a value of '' type instead? [duplicate]在类型 ''' 上使用实例成员 '';您的意思是使用 '' 类型的值吗? [复制]
【发布时间】:2017-04-23 14:44:47
【问题描述】:

下面的错误是由“let managedObjectContext = getMainContext()”代码行引起的,这是什么原因造成的,因为我不明白为什么我无法毫无问题地使用该功能

在“RoutineController”类型上使用实例成员“getMainContext”;您的意思是改用“RoutineController”类型的值吗?

    fileprivate lazy var fetchedExercisesTodayController: NSFetchedResultsController<UserExercise> = {

    let managedObjectContext = getMainContext()
    let userExercise = UserExercise(context: managedObjectContext)

    let fetchRequest: NSFetchRequest<UserExercise> = UserExercise.fetchRequest()
    fetchRequest.predicate = NSPredicate(format: "(usersroutine == %@)", self.routineName)
    fetchRequest.sortDescriptors = [NSSortDescriptor(key: "id", ascending: true)] //this isnt really needed

    let fetchedResultsController = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: self.persistentContainer.viewContext, sectionNameKeyPath: nil, cacheName: nil)
    fetchedResultsController.delegate = self
    return fetchedResultsController
}()

func getMainContext() -> NSManagedObjectContext {
    let appDelegate = UIApplication.shared.delegate as! AppDelegate
    return appDelegate.persistentContainer.viewContext
}

【问题讨论】:

    标签: swift core-data


    【解决方案1】:

    我相信如果您添加self. 它将解决您的问题。

    let managedObjectContext = self.getMainContext()
    

    使用计算变量时,您需要指定 self 才能访问正确的方法。

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-29
      • 2021-09-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-24
      • 1970-01-01
      相关资源
      最近更新 更多