Arrays 如何解决“问题”;找不到';NSFetchRequest';范围内误差

Arrays 如何解决“问题”;找不到';NSFetchRequest';范围内误差,arrays,swift,xcode,nsfetchrequest,Arrays,Swift,Xcode,Nsfetchrequest,我曾尝试以多种不同的方式发出NSFetchRequest,每次都出现以下错误: “在作用域中找不到类型“NSFetchRequest” 以下是我尝试过的具体方法: let fetchRequest: NSFetchRequest<NSFetchRequestResult> = NSFetchRequest(entityName: "Task") let fetchRequest: NSFetchRequest<Task> = Task.NSFetch

我曾尝试以多种不同的方式发出NSFetchRequest,每次都出现以下错误:

“在作用域中找不到类型“NSFetchRequest”

以下是我尝试过的具体方法:

let fetchRequest: NSFetchRequest<NSFetchRequestResult> = NSFetchRequest(entityName: "Task")

let fetchRequest: NSFetchRequest<Task> = Task.NSFetchRequest()

let fetchRequest = Task.fetchRequest() as! NSFetchRequest<Task>
let-fetchRequest:NSFetchRequest=NSFetchRequest(entityName:“任务”)
let fetchRequest:NSFetchRequest=Task.NSFetchRequest()
让fetchRequest=Task.fetchRequest()为!NSFETCH请求

你知道为什么我会犯这个错误吗?我知道这不太可能;我很抱歉,但我正在使用Xcode 12测试版,这可能是Xcode的错误吗?我遵循了一个教程,因为我刚刚学习SwiftUI(以及一般的Swift),所以在我看来,这段代码应该可以工作。我已经在很多地方寻找了答案,所以如果答案很明显,我很抱歉没有找到。

无法在范围内找到*

代码中可能出现此错误的原因有很多

  • 您没有导入框架
  • 如果您正在使用CoCoaPod,则可能未安装该pod
  • 您打开了.xcodeproj文件而不是.xcworkspace文件(如果您使用的是cocoapods)
  • 该变量不存在
  • 解决错误#1

    如果第一个选项是这种情况,则需要查找对象/方法使用的框架。如果它是一个外部框架(没有随Xcode一起提供),那么最好看看您从GitHub获得代码的站点,如果您从GitHub获得代码,请与开发人员联系

    解决错误#2

    要在Xcode项目中安装CoCoapod,您需要打开一个新的终端窗口。在那里,您需要导航到您的Xcode项目。为此,只需输入
    cd/path/To/your/xcodeproject
    。然后您可以键入
    pod init
    。如果出现错误,说明未找到
    -bash:pod:command
    ,则未安装cocoapods。要安装它,只需键入
    sudogeminstallcocoapods
    。然后
    pod init
    就可以正常工作了。此命令创建一个名为
    Podfile
    的文件。打开它并添加
    pod“你的pod的名称”
    。保存并关闭文件。回到终端,键入
    pod install
    。这将需要一些时间,具体取决于吊舱的大小。完成后,应该有一个.xcworkspace文件。从现在起,您需要打开该文件,而不是标准的.xcodeproj文件

    解决错误#3

    如果您使用的是cocoapod,那么当您打开.xcworkspace文件时,这些pod仅由Xcode使用-只需打开它,就可以了

    解决错误#4


    您忘记创建要访问的变量。要创建它,只要键入
    var myVar=“myString”
    就可以了,如果你想更改它,或者用
    替换
    var
    ,如果它永远不会被更改的话。您还需要用所需的值替换
    “myString”
    。另一个原因可能是您定义了试图在闭包内部访问的变量,这意味着无法从外部访问该变量。为了避免这种情况,请在闭包之前定义变量。

    是否已将
    导入CoreData
    添加到文件中?就是这样。我觉得自己很愚蠢,但至少我在学习。有趣的是,教程忽略了这一步。非常感谢你!别难过。如果教程没有显示,那么对于学习者来说,这不是一个容易的飞跃。祝你旅途愉快:-)