InSwifted

框架,使应用程序能够注册和注入依赖项。 InSwifted 旨在安全地解析依赖项,并具有传统的依赖注入用法。

安装

Swift Package Manager

Swift Package Manager 是一个自动化 Swift 代码分发的工具,并已集成到 swift 编译器中。

一旦你设置好你的 Swift 包,添加 InSwifted 作为依赖项就像将其添加到你的 Package.swift 文件的 dependencies 值中一样简单。

dependencies: [
    .package(url: "https://github.com/JustinGuedes/inswifted.git", .upToNextMajor(from: "0.1.0"))
]

CocoaPods

CocoaPods 是 Cocoa 项目的依赖管理器。 有关使用和安装说明,请访问他们的网站。 要使用 CocoaPods 将 InSwifted 集成到你的 Xcode 项目中,请在你的 Podfile 中指定它

pod 'InSwifted', '~> 0.1'

用法

首先要做的是创建一个 DependencyContainer 来包含应用程序的所有依赖项,有了容器,你就可以开始在容器中注册依赖项,就像这样

let container = DependencyContainer()

container.register(Protocol.self) { resolver in
  Implementation()
}

一旦你有了容器,你就可以使用 set(resolver:) 方法为 InSwifted 设置解析器

InSwifted.set(resolver: container)

设置好 InSwifted 解析器后,你就可以开始在整个应用程序中使用方便的属性包装器来解析依赖项

struct Example {

  @Injected
  var dependency: Protocol

}

就是这样!你都设置好了!

更多更改即将到来

许可证

InSwifted 在 MIT 许可证下发布。 查看 LICENSE 以了解详情。