我创建了一个项目来测试 Typhoon 框架,我创建了两个类ApplicationAssembly
,并CoreAssembly
在其中注入了一些属性和构造函数以及Configuration.plist
从中加载数据的默认值。
应用程序集
public class ApplicationAssembly: TyphoonAssembly {
public dynamic func config() -> AnyObject {
return TyphoonDefinition.configDefinitionWithName("Config.plist")
}
}
核心组件
public class CoreAssembly: TyphoonAssembly {
public dynamic func apiHandler() -> AnyObject {
return TyphoonDefinition.withClass(ApiHandler.self) {
(definition) in
definition.useInitializer("initWithDebugging:debugProcess:mainURL:") {
(initializer) in
initializer.injectParameterWith(TyphoonConfig("debug_mode"))
initializer.injectParameterWith(TyphoonConfig("debug_path"))
initializer.injectParameterWith(TyphoonConfig("api_url"))
}
definition.scope = TyphoonScope.Singleton
}
}
public dynamic func viewController() -> AnyObject {
return TyphoonDefinition.withClass(ViewController.self) {
(definition) in
definition.injectProperty("apiHandler", with:self.apiHandler())
}
}
}
我设置了我Info.plist
的TyphoonInitialAssemblies
第一个ApplicationAssembly
,然后是CoreAssembly
.
AppDelegate
一切正常,没有例外或任何东西,除了应用程序从不进入ViewController
课堂。我不知道也许我错过了文档中的某些内容或任何内容。
我在这里缺少什么?
为什么在调试中不进入作为ViewController
Storyboard 中初始视图控制器的类?