基础 单向架构扩展。此软件包提供了 ObservableStore
,可以轻松地在 SwiftUI 应用(但不限于)中使用。
当使用 Swift 包管理器时,使用 Xcode 11+ 安装,或者将以下行添加到您的依赖项
.package(url: "https://github.com/mkj-is/ElementaryCombine.git", from: "0.1.0")
ObservableStore
基于 Elementary Store
构建,并在 Combine 中增加了对 ObservableObject
的符合性。因此,它可以轻松地连接到 SwiftUI 视图。请参阅以下递增计数器的示例
struct RootView: View {
@ObservedObject var store = ObservableStore(state: 0, update: updateCounter)
var body: some View {
VStack {
Text("\(store.state)")
Button(action: { self.store.dispatch(.increment) }) {
Text("Increment")
}
}
}
}
欢迎所有贡献。
项目由 Matěj Kašpar Jirásek 创建。
项目根据 MIT 许可证 许可。