CloudKit API 很大程度上基于完成回调(根据CloudKit Tips and Tricks),但尚未为任何特定发布者设置(当前 - 从 iOS 13.3 开始)。所以你想要的任何东西,你都需要自己包装底层 API,创建你自己的自定义发布者。
使用Combine 包装异步调用的最直接方法可能是使用Future发布者构建您自己的发布者,也可能使用Deferred发布者,这取决于您希望它如何反应。这与您可能用于将任何 async-API 制作成发布者的 API 结构相同。
在Using Combine 中有一个这样做的示例(带有源代码)与部分包装异步调用与 Future 以创建一次性发布者并通过包装基于委托的 API 来创建重复发布者。
作为一般模式,我的目标是让发布者接收与您想要创建的 UI 体验相关的任何更新。这样做的很多过程都涉及选择要封装和包装的内容(错误处理、类型操作以及从底层数据更改中确定要呈现的内容)。
| 归档时间: |
|
| 查看次数: |
718 次 |
| 最近记录: |