DifferenceRepresentable
这是一个小型的库,用于检测两个实例之间的差异。例如,在将更改发送到服务器之前,您可以在某种表单视图之前检查用户是否已编辑了他们的数据。
struct User: DifferenceRepresentable {
let name: String
let country: String
let imageUrl: URL?
}
let userA = User(name: "Bob", country: "Japan", imageUrl: URL(string: "https://example.com"))
let userB = User(name: "Bob", country: "United State", imageUrl: nil)
var diff = userA.difference(from: userB)
diff.keys // ["country", "imageUrl"]
diff.values // ["United State", URL(https://example.com)]
要求
- Xcode 11.x / Swift 5.x
- iOS 8.0 或更高版本
- macOS 10.9 或更高版本
- tvOS 9.0 或更高版本
- watchOS 2.0 或更高版本
安装
此库可以通过 Swift Package Manager 和 CocoaPods 进行安装
CocoaPods
将 pod 'DifferenceRepresentable'
添加到您的 Podfile 中,然后运行 pod install
。
许可证
此库受 MIT 许可证的保护。