2012-06-20 92 views
1

推薦網址:http://davidsulc.com/blog/2012/04/22/a-simple-backbone-marionette-tutorial-part-2/Backbone.Marionette和Event Aggregator

我很天真地進入骨幹和事件聚合器。你能否讓我知道使用下面這行代碼的理由。

this.model.addVote(); MyApp.vent.trigger(「rank:down」,this.model);

似乎有些其他的可能性是

this.model.addVote(); this.model(rankDown);

或其他方式 MyApp.vent.trigger( 「addVote」,this.model

請解釋一下感謝

運行示例:http://jsfiddle.net/Irfanmunir/966pG/29/

回答

3

活動一般都去耦對象很有用而應用程序級別的事件聚合模式(或pub/sub模式)允許第三方進行混合:發佈者,聚合者,訂閱者,從而進一步解耦,這樣,發佈者用戶也不必相互瞭解嘿,每個人都只知道事件聚合器。

我寫了一篇小文章在這一段時間回來:

http://lostechies.com/derickbailey/2012/04/03/revisiting-the-backbone-event-aggregator-lessons-learned/

在這種情況下,使用的事件,因爲該模型需要在其所屬的集合的情況下被操縱。而不是通過模型去獲取集合(它可能不會被直接分配給...模型不需要成爲集合的一部分),它更容易和更靈活地提出這個事件並讓它在更多的地方處理適當。

+0

第一個鏈接是相同的第二..也許只是刪除引用舊帖子? – ErichBSchulz

+0

該鏈接無法打開,因此我從google緩存創建了一個要點:https://gist.github.com/andreif/6018972 – Andrei

相關問題