使用带有参数的 Dagger 2 将 ViewModel 注入到片段中



我正在尝试使用单个工厂来创建带有构造函数参数的ViewModels。 我遵循了其中一个开放dagger问题中的建议,@matejdro https://github.com/google/dagger/issues/1273

但是注射不起作用。

我收到一个错误:"错误:[dagger/丢失绑定] kotlin。如果没有@Provides注释的方法,就无法提供懒惰。

知道如何解决问题吗? 我将创建的项目上传到 github:https://github.com/davida5/daggerViewModelBestPractice

这很简单,你应该使用dagger.Lazy(包括它的导入(而不是kotlin.Lazy

一旦修复,您会遇到另一个问题;AFAIK 如果没有相应的合格提供程序,则无法使用合格的依赖项。您有一个合格的UserManager实例被注入到AccountsViewModel中。添加合格的提供程序方法或从AccountsViewModel中删除限定。

相关内容

  • 没有找到相关文章

最新更新