Xcode 12 & SwiftUI:无法在此文件中预览 — 更新预览失败
Xcode 12 & SwiftUI: Cannot preview in this file — Failed to update preview
Xcode12 上的预览似乎停止工作了!尝试预览 SwiftUI 文件模板并收到以下错误。任何想法如何解决这一问题?尝试清理构建文件夹、删除派生数据并重新启动 Xcode 无济于事!
卡塔琳娜 10.15.6.
RemoteHumanReadableError: Failed to update preview.
The preview process appears to have crashed.
Error encountered when sending 'prepare' message to agent.
==================================
| RemoteHumanReadableError: The operation couldn’t be completed. (BSServiceConnectionErrorDomain error 3.)
|
| BSServiceConnectionErrorDomain (3):
| ==BSErrorCodeDescription: OperationFailed
我正在尝试预览的代码(来自 SwiftUI 新文件模板):
import SwiftUI
struct SwiftUIView: View {
var body: some View {
Text("Hello, World!")
}
}
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
SwiftUIView()
}
}
显然这是 Firestore 的错误,最有可能的原因是:XCode 12 Preview Crashes when adding Firebase SDK Swift UI 2.0。此时最好的解决方案是调用 pod update 应该可以解决问题。我验证了 Xcode 12,iOS 13+。
我在更新 Firebase Analytics(至 v6.33.0)时遇到了同样的问题。注释掉以下行修复它。
FirebaseApp.configure()
如果您的 SwiftUIView
将 ObservableObject
用作 environmentObject
,试试这个:
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
SwiftUIView().environmentObject(YourObservableObjectClass())
}
}
如果你使用 SwiftUI (ObservableObject, @EnvironmentObject)
添加到预览
.environmentObject(ModelData())
--
struct LandmarkDetail_Previews: PreviewProvider {
static var previews: some View {
LandmarkDetail(landmark: ModelData().landmarks[1])
.environmentObject(ModelData())
}
}
我的模型数据
final class ModelData:ObservableObject
{
@Published var landmarks: [Landmark] = load("landmarkData.json")
}
大家好。
我设法解决了这个问题。
注释 didFinishLaunchingWithOptions
方法中的所有内容就足够了,预览 SwiftUI 将起作用。
Xcode12 上的预览似乎停止工作了!尝试预览 SwiftUI 文件模板并收到以下错误。任何想法如何解决这一问题?尝试清理构建文件夹、删除派生数据并重新启动 Xcode 无济于事!
卡塔琳娜 10.15.6.
RemoteHumanReadableError: Failed to update preview.
The preview process appears to have crashed.
Error encountered when sending 'prepare' message to agent.
==================================
| RemoteHumanReadableError: The operation couldn’t be completed. (BSServiceConnectionErrorDomain error 3.)
|
| BSServiceConnectionErrorDomain (3):
| ==BSErrorCodeDescription: OperationFailed
我正在尝试预览的代码(来自 SwiftUI 新文件模板):
import SwiftUI
struct SwiftUIView: View {
var body: some View {
Text("Hello, World!")
}
}
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
SwiftUIView()
}
}
显然这是 Firestore 的错误,最有可能的原因是:XCode 12 Preview Crashes when adding Firebase SDK Swift UI 2.0。此时最好的解决方案是调用 pod update 应该可以解决问题。我验证了 Xcode 12,iOS 13+。
我在更新 Firebase Analytics(至 v6.33.0)时遇到了同样的问题。注释掉以下行修复它。
FirebaseApp.configure()
如果您的 SwiftUIView
将 ObservableObject
用作 environmentObject
,试试这个:
struct SwiftUIView_Previews: PreviewProvider {
static var previews: some View {
SwiftUIView().environmentObject(YourObservableObjectClass())
}
}
如果你使用 SwiftUI (ObservableObject, @EnvironmentObject)
添加到预览
.environmentObject(ModelData())
--
struct LandmarkDetail_Previews: PreviewProvider {
static var previews: some View {
LandmarkDetail(landmark: ModelData().landmarks[1])
.environmentObject(ModelData())
}
}
我的模型数据
final class ModelData:ObservableObject
{
@Published var landmarks: [Landmark] = load("landmarkData.json")
}
大家好。
我设法解决了这个问题。
注释 didFinishLaunchingWithOptions
方法中的所有内容就足够了,预览 SwiftUI 将起作用。