【发布时间】:2022-01-25 15:33:21
【问题描述】:
当我尝试像这样传递预览 Core Data 对象时,Xcode 的预览画布不断崩溃,没有错误消息:
import SwiftUI
import CoreData
struct BookView: View {
let book: Book
var body: some View {
Text("Hello, World!")
}
}
// ^^^ This stuff is fine ^^^
// vvv This stuff is not vvv
struct BookView_Previews: PreviewProvider {
static let moc = NSManagedObjectContext(concurrencyType: .mainQueueConcurrencyType)
static var previews: some View {
let book = Book(context: moc)
book.title = "Test book"
book.author = "Test author"
book.genre = "Fantasy"
book.rating = 4
book.review = "This was a great book; I really enjoyed it."
return NavigationView {
BookView(book: book)
}
}
}
我正在关注关于 Core Data 和 SwiftUI 的 Hacking with Swift 教程,我的邮箱是this step。
这似乎是将预览对象添加到 SwiftUI 画布中的标准方法,但我无法让它工作。仅供参考,该应用程序在模拟器中运行良好,我只是想让它在预览画布中也能正常工作。我在 macOS 12 上使用 Xcode 13.2.1。
谢谢!
【问题讨论】:
-
@JoakimDanielson 这是完整代码的配对版本,我可以在其中访问对象的属性。视图很好,它正在启动不起作用的预览。
标签: ios swift xcode core-data swiftui