如何解决使用依赖注入 (Swinject) 在 MVVM-C 中的 ViewModel 之间传递对象
我是 DependencyInjection
和 swinject
的新手,因此我有疑问。
假设我们有一个包含 PersonList
对象列表的 viewmodel Person
。我们选择 Person
中的一个并将其传递给 PersonDetails
,它类似于 PersonDetails(person:Person)
所以基本上我们从第一个 viewmodel 中选择 Person
并将其传递给第二个 viewmodel将显示 Person
的详细信息。
正如我对 swinject
的理解,我们将在编译时注入依赖项
let container = Container()
container.register(Person.self) { _ in Person(name: "Someone") }
container.register(PersonDetails.self) { r in PersonDetails(person: r.resolve(Person.self))}
我的问题是我们在编译时没有信息来知道在 Person
中会选择什么样的 PersonList
那么我们如何将正确选择的 Person
注入到 { {1}} 在编译时。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。