Typhoon Swift Framework - 如何在初始化器中注入参数
Typhoon Swift Framework - How to inject parameters in initializers
使用 Swift 我应该能够使用其依赖项初始化服务,例如 RepositoryA 和 RepositoryB
假设服务应该是瞬态的,存储库是单例的
我能找到的只有这个:
https://github.com/appsquickly/Typhoon/wiki/Types-of-Injections#injection-with-run-time-arguments
但我缺少一个 swift 示例,用于服务的初始化程序和带有 initWithParameter 的容器,使用具有多个参数的初始化程序
有可用的代码吗?
要使用 Typhoon 执行初始化程序注入,请对用户指南中显示的示例使用等效的 Swift 代码。它看起来像这样:
public dynamic func citiesListController() -> AnyObject {
return TyphoonDefinition.withClass(CitiesListViewController.self) {
(definition) in
definition.useInitializer("initWithCityDao:theme:") {
(initializer) in
initializer.injectParameterWith(self.coreComponents.cityDao())
initializer.injectParameterWith(self.themeAssembly.currentTheme())
}
}
}
Typhoon Swift sample application 上面的代码是从中提取的,显示了更多的例子。
使用 Swift 我应该能够使用其依赖项初始化服务,例如 RepositoryA 和 RepositoryB
假设服务应该是瞬态的,存储库是单例的
我能找到的只有这个:
https://github.com/appsquickly/Typhoon/wiki/Types-of-Injections#injection-with-run-time-arguments
但我缺少一个 swift 示例,用于服务的初始化程序和带有 initWithParameter 的容器,使用具有多个参数的初始化程序
有可用的代码吗?
要使用 Typhoon 执行初始化程序注入,请对用户指南中显示的示例使用等效的 Swift 代码。它看起来像这样:
public dynamic func citiesListController() -> AnyObject {
return TyphoonDefinition.withClass(CitiesListViewController.self) {
(definition) in
definition.useInitializer("initWithCityDao:theme:") {
(initializer) in
initializer.injectParameterWith(self.coreComponents.cityDao())
initializer.injectParameterWith(self.themeAssembly.currentTheme())
}
}
}
Typhoon Swift sample application 上面的代码是从中提取的,显示了更多的例子。