PureMvc 中Mediator 必须持有视图吗?
-
21-09-2019 - |
题
我有一个关于 pureMvc 的问题。
我使用 pureMvc 来构建一个引擎,在引擎初始化部分我有一个要求
1) moduleA 必须首先初始化
2) moduleB 、 moduleC 在 moduleA 初始化完成后需要初始化。
3) moduleD 需要在 moduleB 和 moduleC 初始化完成后进行初始化。
4) moduleA 、 moduleB 、 moduleC 、 moduleD 都扩展了 Proxy,因为这四个系统都需要发送通知,但不需要监听。
但为了满足要求,我不能使用命令来执行此操作,因为它们有 ini 顺序,而且它们还需要记住当前状态(例如:moudleB 是 init Complate,但 moudleC 不是 init complate,因此无法 init moudleD),但命令是无状态的。
我认为最好的方法是使用一个调解器来做到这一点,因为它既可以监听也可以发送通知。
我的问题是:
1)这是使用一个调解员来做到这一点的好方法吗?
2)如果使用Mediator是个好方法,那么当它听到第一个moduleA is init complate时
registerCommand(FIRST_MODULE_INIT_COMPLATE , initStepTwoCommand);
sendNotification(FIRST_MODULE_INIT_COMPLATE);
removeCommand(FIRST_MODULE_INIT_COMPLATE);
需要这样做,或者只是在中介器中执行 inti 逻辑?
谢谢
解决方案
有一个名为 StartUpManager 的实用程序可以解决这个问题。它允许您定义加载依赖项,以便在所需数据可用之前中介器/代理不会注册。这是链接
不隶属于 StackOverflow