Проблема с предварительным просмотром SwiftUI с @State и CoreData - PullRequest
0 голосов
/ 14 июля 2020

У меня проблемы с предварительным просмотром для работы с тем, что кажется довольно простой структурой. Клиент - это объект CoreData:

struct CustomerDetailView: View {
    
    @Environment(\.managedObjectContext) var moc
    @State var showNewCustomer = false
    
    var customer: Customer
    
    var body: some View {

Я пробовал почти все, что не работает, включая это:

struct CustomerDetail_Previews: PreviewProvider {
    static var previews: some View {
        let context = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext
        return
            CustomerDetailView(customer: --Not sure what works here-- ).environment(\.managedObjectContext, context)
    
    }
}

Я пробовал stati c let customer = Customer (), чтобы я мог использовать переменную клиента в последней строке, но это не помогло.

1 Ответ

0 голосов
/ 14 июля 2020

Preview использует другой контейнер для приложений, поэтому вы можете просто создать новый Customer, например

struct CustomerDetail_Previews: PreviewProvider {
    static var previews: some View {
        let context = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext
        return
            CustomerDetailView(customer: Customer(context: context))
               .environment(\.managedObjectContext, context)
    
    }
}
...