目前我正在使用 puremvc 框架开发 flex。实际上我的问题与在 puremvc 框架中注册调解器的位置有关。我的一位同事正在仅在视图(组件)creationComplete 方法(内部视图)中注册调解器。虽然我的偏好是从 creationComplete 方法发送一些通知,这些通知可以由某些命令处理,并且命令将注册调解器。那么就最佳实践而言,哪种方法更好?
3 回答
4
视图本身不能注册中介。调解员可以注册调解员。例如,您有一个 Panel 和一个 PanelMediator。如果您在此面板中有 ListA 和 ListB,您的 PanelMediator 可以将创建完成事件侦听器添加到 ListA 和 ListB。在这些侦听器中,您可以注册像 ListAMediator/ListBMediator 这样的中介。
目标是使组件可重用,因此您的视图应该处理 UI 而不是应用程序核心。
于 2010-03-18T13:04:53.583 回答
2
我会在命令中注册您的调解员。
从最佳实践...
为了与系统的其他部分进行通信和交互,命令可以:
- 注册、删除或检查中介、代理和命令的现有注册。
- 发送通知以由其他命令或中介响应。
- 检索和代理和中介并直接操作它们。
正如 mico 所提到的,View 不应该注册自己的中介,Proxy 应该与它们交互的数据源保持联系,而不是其他任何东西。
于 2010-03-30T16:41:26.223 回答
1
我通常有一个 StartUp 通知,它会在基本 Movieclip 收到添加到舞台的事件后立即调用。此 StartUp 通知会触发 StartUp 命令,该命令将注册所需的所有中介和代理。希望这可以帮助。
于 2010-11-22T10:24:03.740 回答