我遇到了需要嵌套 MVP 模式的场景。最好用一个可视化的例子来解释:
------------------------------
| [View] |
| | |
| +----[Presenter] |
| | |
| +------[Model] |
|____________________________|
|
+----[View]
|
+----[Presenter]
|
+------[Model]
这就是两个 MVP 层应该如何交互。我的问题是关于两者之间的联系。我可以设想几种将两者联系起来的方法:
- 第 1 层的 Presenter 连接到第 2 层的视图。
- 第 1 层的模型连接到第 2 层的视图。
- 第 2 层的视图是第 1 层(视图包含对第 1 层的 M、V 和 P 的引用)。
- 第 1 层的演示者或模型是第 2层的视图。
如果有的话,哪些是正确的?
然后是它们如何连接的问题。第 2 层视图是否应该引用第 1 层中的对象之一?交互是否应该纯粹基于事件?两者的结合(如果是,参考应该在哪里?)?
我对使用这些类型的模式很陌生,所以任何见解都会受到赞赏。