gpt4 book ai didi

javascript - MVP 中如何创建复合 View ?

转载 作者:行者123 更新时间:2023-11-28 09:50:45 26 4
gpt4 key购买 nike

我正在开发一个具有多个 View 的应用程序。每个 View 都由其他离散的可重用 View 组件组成。

使用MVP, subview 是如何创建的?父演示者很容易使用如下内容创建:

var ParentPresenter = new ParentPresenter(model,parentView);

但是在父演示者中, subview 或 subview 是如何创建的?

我会在父演示器中实例化 subview 演示器吗?为此,需要访问具体的 subview 实现,这违背了 MVP,对吗?这不会让对演示者进行单元测试变得很尴尬吗?

我已经阅读了许多文章、帖子和示例(主要是 .NET 中的),但我仍然没有“明白”。

此外,我是在 JavaScript 中执行此操作(使用 Backbone),因此 JS 中的任何具体示例都会有所帮助。

谢谢

最佳答案

在 .NET 中,我使用 IoC 容器来解决这个问题:

SubPresenter 构造函数:

this.view = IoC.Resolve<ISubView>();

所以在应用中:

IoC.Register<ISubView, ConcreteSubView>();

在单元测试中:

IoC.Register<ISubView, MockSubView>();

我不了解 JS,但你可以查看此线程 IoC frameworks for JS .

关于javascript - MVP 中如何创建复合 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11055737/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com