首页 > 解决方案 > 将 Xcode Boilerplate Core Data/CloudKit 代码与 MVVM 架构相结合

问题描述

当在项目创建时选中 Core Data 和 CloudKit 复选框时,我正在练习使用 Xcode 生成的样板代码创建一个多平台应用程序(也可以是一个 iOS 应用程序)。

Xcodepersistence.swift使用 Core Data 堆栈代码生成一个文件,并@FetchRequest在文件中使用属性包装器ContentView.swift。但是,我想将一些更“视图模型”或非 UI 样板代码移出ContentView并移入更类似于 MVVM 的视图模型类文件,以便我将ContentView注意力集中在我的 UI 上。

我想继续使用提供的persistence.swift文件作为我的核心数据管理器内容。

在将生成的其他样板代码 Xcode 移出到新的视图模型类文件时,我是否仍然可以使用@FetchRequestin 的功能(我认为它必须保留在我的内容视图中)?例如,我说的是自动生成的代码和。ContentViewContentViewaddItem()deleteItem()

换句话说,我可以同时使用这两种@FetchRequest方法来访问我的实体模型,同时让我的代码更适合 MVVM 架构吗?

标签: core-dataswiftuicloudkit

解决方案


推荐阅读