我正在尝试将我的 viewModel 类注入到 WKInterfaceController,在我的 InterfaceController 中我设置了属性,但是当我尝试在其中使用它时func awake(withContext context: Any?)
,它为零。
所以我尝试这样做的方式是:在 ExtensionDelegate 中设置容器,并在方法 onInitCompleted 中使用 viewModel 类向它注册我的interferenceController。
我的代码:
class ExtensionDelegate: NSObject {
let container = Container()
func applicationDidFinishLaunching() {
setupContainer()
}
func setupContainer(){
container.register(HomeInterfaceController.self) { _ in HomeInterfaceController()
}.initCompleted { r, c in
c.viewModel = r.resolve(HomeViewModel.self)
}
}
}
class HomeInterfaceController: WKInterfaceController {
var viewModel: HomeViewModel!
override func willActivate() {
viewModel.fetch() // ----> here I get exception
super.willActivate()
}
}
在我尝试使用我的 viewModel 的那一行,我得到:
线程 1:EXC_BREAKPOINT(代码=1,子代码=0x524abc)
你知道如何正确地将类注入 WKInterfaceController 吗?