参考网址:http://davidsulc.com/blog/2012/04/22/a-simple-backbone-marionette-tutorial-part-2/
我对骨干和事件聚合器很天真。你能否告诉我使用以下代码行的原因。
this.model.addVote(); MyApp.vent.trigger(“rank:down”,this.model);
似乎还有其他一些可能性
this.model.addVote(); this.model(rankDown);
或其他方式 MyApp.vent.trigger(“addVote”,this.model
请解释谢谢。
答案 0 :(得分:3)
事件通常对于将对象彼此解耦,同时仍然允许它们进行通信非常有用。应用程序级别的事件聚合器模式(或发布/订阅模式)允许通过在混合中包含第三方进一步解耦:发布者,聚合器,订阅者。这样,发布者和订阅者都不必彼此了解。他们每个人都只知道事件聚合器。
我前一段时间写了一篇小文章:
在这种情况下,使用事件是因为模型需要在其所属的集合的上下文中进行操作。而不是通过模型来获取集合(它可能不会被直接分配给...模型不需要成为集合的一部分),而是提升此事件并将其处理到更多地方更容易,更灵活合适的。