0
import SwiftUI
import Foundation
import CoreData

//MARK: - Welcome View
struct fetchView: View {
    
    
    //MARK: - View
    var body: some View {
        let testing = getFetch()
        ForEach(testing) {test in
            
        }
        Text("Hello World")
    }
    
    //MARK: - Methods
    
    func getFetch() -> NSFetchRequest<FeedList> {
        let fr: NSFetchRequest<FeedList> = NSFetchRequest<FeedList>(entityName: "timestamp")
        fr.sortDescriptors = [NSSortDescriptor(key: "timestamp", ascending: true)]
        fr.predicate = NSPredicate(format: "timestamp > %@", Calendar.current.startOfDay(for: Date()) as NSDate)
        return fr
    }
}

//MARK: - Preview
struct fetchView_Previews: PreviewProvider {
    static var previews: some View {
        fetchView()
    }
}

在 ForEach(testing) 行中(测试的 t 带有红色下划线)我得到了错误

无法将“NSFetchRequest”类型的值转换为预期的参数类型“范围”

如果有人知道如何解决这个问题,我可以通过列出我的 CoreData 中的数据。一个很有帮助的功能。

PS我知道如何做一个@fetchRequest,但我正在尝试这样做,所以它可以在一个每天我可以汇总值并将它们放在一个数组中的类中工作,而@fetchRequest 只能在一个结构中工作。

4

1 回答 1

0

您正在从该函数返回获取请求。您需要做的是FeedList通过在托管对象上下文上调用 fetch 函数并传入您创建的 fetchRequest 来返回获取的结果(类型为 的数组)。

于 2022-01-20T03:26:51.440 回答