Mar*_*rdo 14 arrays xcode nsfetchrequest swift
我尝试以多种不同的方式创建 NSFetchRequest,每次出现此错误时:
“在范围内找不到类型‘NSFetchRequest’”
以下是我尝试过的具体方法:
let fetchRequest: NSFetchRequest<NSFetchRequestResult> = NSFetchRequest(entityName: "Task")
let fetchRequest: NSFetchRequest<Task> = Task.NSFetchRequest()
let fetchRequest = Task.fetchRequest() as! NSFetchRequest<Task>
Run Code Online (Sandbox Code Playgroud)
知道为什么这会给我这个错误吗?我知道这不太可能;iklely 但我在 Xcode 12 beta 上,这可能是 Xcode 的错误吗?我遵循了一个教程,因为我只是在学习 SwiftUI(以及一般的 Swift),所以在我看来这段代码应该可以工作。我已经在很多地方寻找过这个问题的答案,所以如果很明显,我很抱歉我错过了。
Fre*_*mer 11
在范围内找不到 *
此错误可能出现在您的代码中的原因有多种。
解决错误 #1
如果是第一个选项,则需要查找对象/方法使用的框架。如果它是一个外部框架(不随 Xcode 一起提供),那么查看您从 GitHub 获取代码的站点/联系开发人员可能是个好主意。
解决错误 #2
要在您的 Xcode 项目中安装 cocoapods,您需要打开一个新的终端窗口。在那里,您需要导航到您的 Xcode 项目。为此,只需输入cd /path/to/your/xcodeproject. 然后你可以输入pod init. 如果出现错误提示-bash: pod: command not found,则未安装 cocoapods。要安装它,只需键入sudo gem install cocoapods. 然后pod init应该工作得很好。此命令创建一个名为Podfile. 打开它并添加pod 'name-of-your-pod'. 保存并关闭文件。回到终端,输入pod install。现在这将需要一些时间,具体取决于 Pod 的大小。完成后,应该有一个 .xcworkspace 文件。从现在开始,您需要打开它而不是标准的 .xcodeproj 文件。
解决错误 #3
如果您使用的是 cocoapods,那么当您打开 .xcworkspace 文件时,这些 pod 仅由 Xcode 使用 - 只需打开它,您就可以开始了!
解决错误 #4
您忘记创建要访问的变量。要创建它,只需键入var myVar = "myString"是否要更改它或替换var为let如果它永远不会更改。您还需要替换"myString"为您想要的值。另一个原因可能是您在闭包内部定义了要访问的变量,这意味着无法从外部访问它。为避免这种情况,请在关闭之前定义您的变量。
解决问题 #5
为了让 Xcode 在构建应用程序时知道要包含哪些内容,它使用了所谓的“目标”。如果您的文件未添加到任何目标,编译器将无法找到该文件。要将您的文件添加到目标,请选择该文件,然后在右侧窗格中选择目标成员资格 -> (YourAppName)。重建项目应该可以解决这个问题(感谢@Sravan 指出这一点)。