我目前遷移大型骨幹應用到木偶和很好奇,什麼是模塊之間進行調解活動更好的設計的意見。Marionette.js中保(「全球性」命令VS應用程序控制器)
我有有幾個模塊,其中一個模塊中的一個動作可能導致活動其他模塊中發生的應用。
由於這些所有都耦合到I可以簡單地使用Wreqr接口中的應用其中:
模塊1:
someActivity: ->
App.vent.trigger("skyFalling")
模塊2:
initialize: ->
App.vent.on("skyFalling", @closeOrSomething)
第3單元:
initialize: ->
App.vent.on("skyFalling", @blinkRapidly)
或者它會更好,其中應用程序(或綁在應用程序的控制器)偵聽,然後直接在所說的「closeOrSomething」和「blinkRapidly」函數來觸發模塊1的事件模塊(因爲App知道它正在加載的所有模塊)。
應用:
skyFallingEventHandler: ->
Module2.closeOrSomething()
Module3.blinkRapidly()
這可能太過分了。這兩種方法都可以發揮作用,而且你很可能會爲此提出強有力的論據。這個問題可能更適合於http://codereview.stackexchange.com/ –