Mediator必须在PureMvc中持有一个视图吗?

时间:2009-12-28 10:09:43

标签: flex actionscript-3 design-patterns puremvc

我有一个关于pureMvc的问题。

我使用pureMvc构建引擎,在引擎初始化部分我有一个要求

1)moduleA必须init firt

2)moduleB,moduleC init complate后,moduleC需要init。

3)moduleD需要在moduleB&之后初始化moduleC init complate。

4)moduleA,moduleB,moduleC,moduleD都扩展代理,因为四个系统都需要发送通知,但不需要监听它。

但是为了符合要求,我无法使用命令来执行此操作,因为他们有ini顺序而且他们需要记住当前状态(例如:moudelB是init Complate但是moudleC不是init complate然后不能初始化moudleD)但命令是无国籍的。

我认为最好的方法是使用一个Mediator来做,因为它可以听取并发送通知。

我的问题是:

1)这是一个使用一个Mediator来做这件事的好方法吗?

2)如果使用Mediator是好方法,那么当它听到第一个模块A是init complate

registerCommand(FIRST_MODULE_INIT_COMPLATE , initStepTwoCommand);
sendNotification(FIRST_MODULE_INIT_COMPLATE);
removeCommand(FIRST_MODULE_INIT_COMPLATE);

需要做这样的事情或者只是在Mediator中执行inti逻辑吗?

感谢

1 个答案:

答案 0 :(得分:1)

有一个名为StartUpManager的实用程序,应该可以解决这个问题。它允许您定义加载依赖关系,因此在所需数据可用之前,不会注册介体/代理。这是链接

http://trac.puremvc.org/Utility_AS3_StartupManager