RxQueryKit 0.7.1

RxQueryKit 0.7.1

测试已测试
Lang语言 SwiftSwift
许可证 BSD-2-Clause
发布上次发布2021年3月
SwiftSwift 版本5
SPM支持 SPM

Kyle Fuller 维护。



 
依赖
RxSwift~> 6.0
QueryKit~> 0.14.0
 

QueryKit Logo

RxQueryKit

RxSwift 对 QueryKit 的扩展。

用法

查询集

RxQueryKit 扩展了 QueryKit,并提供了将操作作为可观察表达式评估和执行的方法。

let queryset = Person.queryset(context)
    .filter { $0.age > 25 }
    .orderBy { $0.name.ascending }

您可以使用以下方式订阅查询集结果的任何更改

queryset.objects().subscribeNext {
  print($0)
}

您还可以订阅匹配对象的数量

queryset.count().subscribeNext {
  print("There are now \($0) people who are more than 25.")
}

托管对象上下文

RxQueryKit 为托管对象上下文提供了扩展,以监控上下文中的对象是否更改,以及上下文是否会保存或已保存。

它提供了一个类型安全的结构,提供更改的对象。

context.qk_objectsDidChange().subscribeNext { notification in
  print("Objects did change:")
  print(notification.insertedObjects)
  print(notification.updatedObjects)
  print(notification.deletedObjects)
}

context.qk_willSave().subscribeNext { notification in
  print("Context will save")
}

context.qk_didSave().subscribeNext { notification in
  print("Context did save")
}

安装

建议使用 CocoaPods 将 RxQueryKit 添加到项目中。

pod 'RxQueryKit'

许可证

QueryKit 在 BSD 许可证下发布。请参阅 LICENSE