在puremvc中注册调解员的位置?

时间:2010-03-17 18:01:20

标签: actionscript flex3 puremvc

目前我正在使用puremvc框架进行flex。实际上我的问题与在puremvc框架中注册mediator的位置有关。我的一位同事在视图(组件)创建中仅注册了mediator(仅在内部视图中)。虽然我的偏好是从creationComplete方法发送一些通知,可以通过某些命令处理,命令将注册mediator。那么哪种方法在最佳实践方面更好?

3 个答案:

答案 0 :(得分:4)

观点本身无法注册调解员。调解员可以注册调解员。例如。你有一个Panel和一个PanelMediator。如果此面板中有ListA和ListB,则PanelMediator可以向ListA和ListB添加创建完整事件侦听器。在这些监听器中,您可以注册像ListAMediator / ListBMediator这样的调解器。

目标是使组件可重用,因此您的视图应该处理UI而不是应用程序核心。

答案 1 :(得分:1)

我会在命令中注册你的调解员。

来自Best Practices ...

  

与他人沟通和互动   部分系统,命令可以:

     
      
  • 注册,删除或检查Mediators的现有注册,   代理和命令。
  •   
  • 发送通知以供其他命令或调解员回复。
  •   
  • 检索和代理和调解员并直接操作它们。
  •   

正如mico所提到的,View不应该注册他们自己的调解器,并且Proxy应该与他们与之交互的数据源保持联系,而不是别的。

答案 2 :(得分:0)

我通常会在基本Movieclip收到添加到舞台事件后立即调用一个StartUp通知。此StartUp通知触发StartUp命令,该命令将注册所需的所有调解器和代理。希望这会有所帮助。