Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
968 views
in Technique[技术] by (71.8m points)

core data - how to fix the error: 'property initializers run before' self 'is available' in @FetchRequest

I have the following structure and in the @FetchRequest I get an error in the predicate, var 'nomAcuariL', I don't know how to solve this error, how do I initialize the property?

Error:

enter image description here

 import SwiftUI
    
    struct Llist: View {
        
        var nomAcuariL : String
        var parametres : Parametres
        
        @Environment(.managedObjectContext) var moc
    
        
        @FetchRequest(entity: Parametres.entity(),sortDescriptors: [NSSortDescriptor(keyPath: Parametres.nomParametres, ascending: true)], predicate: NSPredicate(format: "nomParametres = %@", nomAcuariL)) var contactos: FetchedResults<Parametres>
    
        
        var body: some View {
            
            List{
                ForEach(contactos, id:.self){ contact in
                    Text("(contact.nomParametres ?? "")")
                }
            }
        }
    }
question from:https://stackoverflow.com/questions/65647771/how-to-fix-the-error-property-initializers-run-before-self-is-available-in

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

You can't use the instance member nomAcuariL in the FetchRequest because it has not been initialized yet. In other words, it does not exist when you try to initialize the FetchRequest. You will need to pass that value in to the fetch request by some object that already exists. Try using a class or struct that you can instantiate there that has the data, or simply use a literal string.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...