13

以下のコードは、コアデータをいじっている私の見解ですが、スコープ内にエンティティが見つからないというエラーが表示され続けますが、アプリケーションは正常に実行され、すべてが正常に保存およびフェッチされます。

これは、それが与えるエラーのスクリーンショットです

import SwiftUI

struct ContentView: View {
    @Environment(\.managedObjectContext) var moc
    @FetchRequest(
        entity: TestModelCoreData.entity(),
        sortDescriptors: [
            NSSortDescriptor(keyPath: \TestModelCoreData.name, ascending: false)
        ]
    ) var entities: FetchedResults<TestModelCoreData>
    
    var body: some View {
        VStack {
            Text("Hello, world!").padding()
            
            Button(action: {
                let newEntry = TestModelCoreData(context: self.moc)
                newEntry.name = "New name"
                
                if self.moc.hasChanges {
                    try? self.moc.save()
                }
            }) {
                Text("Add entry")
            }
            
            List(entities, id: \.self) { entity in
                Text(entity.name ?? "Unknown")
            }
        }
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}
4

3 に答える 3

2

提供された解決策のいずれも機能しない場合 (Xcode の再起動、プロジェクトの再作成、ターゲット メンバーシップに追加されているかどうかの確認、派生データの削除など)、IDE の警告にもかかわらず、とにかくcmd+を使用してプロジェクトをビルドしようとしBます。これで問題は解決しました。

于 2021-07-18T13:42:46.470 に答える