ElementaryEffectBuilder

Elementary 是 Swift 中的单向架构扩展。此包是用于创建和组合 effect 的函数构建器。它的灵感来源于 Redux sagas。

安装

当使用 Swift Package Manager 时,使用 Xcode 11+ 安装,或将以下行添加到您的依赖项中

.package(url: "https://github.com/mkj-is/ElementaryEffectBuilder.git", from: "0.1.0")

用法

此软件包的主要功能是将 effect 函数组合成一个

let appEffect: Effect<AppState, AppAction> = buildEffect {
    createNetworkEffect()
    createPersistenceEffect()
    createUrlEffect()
}

此外,还提供了用于构建 effect 的 take 函数。请参阅以下示例

func createUrlEffect(application: UIApplication = .shared) -> Effect<AppState, AppAction> {
    take(
        AppAction.openHomepage,
        execute: { application.open(URL(string: "https://mkj.is")!) }
    )
}

贡献

欢迎所有贡献。

项目由 Matěj Kašpar Jirásek 创建。

项目根据 MIT 许可证 获得许可。