4

Marionette.EventAggregatorMarionette.EventBinder的文档中,代码完全相同。我想我错过了一个差异,它是什么?何时使用它们中的每一个?

4

1 回答 1

4

主要区别在于意图。这些文章中解释了 EventAggregator 的意图:

http://martinfowler.com/eaaDev/EventAggregator.html

http://codebetter.com/jeremymiller/2009/07/22/braindump-on-the-event-aggregator-pattern/

http://lostechies.com/derickbailey/2011/07/19/references-routing-and-the-event-aggregator-coordinating-views-in-backbone-js/

EventBinder 的目的是管理事件绑定中的依赖关系,正如 Johnny Oshika 在这里首次描述的那样:Backbone.js:重新填充或重新创建视图?

...

不过,随着 Marionette 和 Backbone v0.9.9 的发展,EventBinder 现在已经过时了,因为 Backbone.Events 现在包含listenTostopListening方法。EventAggregator正在接管 Backbone.Events 未涵盖的任何内容。不过,这适用于 Marionette v1.0-rc3 及更高版本。如果您仍在使用 Marionette v1.0-rc2 或更早版本,您仍然需要 EventBinder。

于 2012-12-28T20:44:16.367 回答