2013-09-30 13 views
5

Marionette Application.vent'un noktası nedir? Uygulama nesne zaten Backbone.Events uzanır, bu yüzden aşağıdaki yazabilirsiniz: Kaynağını okudumUygulama olayı karışımına ve Application.vent öğesine güvenmek arasındaki fark nedir?

window.app = new Backbone.Marionette.Application(); 
app.vent.on("my:event", function() { console.log(arguments); }); 
app.vent.trigger("my:event"); 

ve ben farkı söyleyemem ama: daha fazla kolayca

window.app = new Backbone.Marionette.Application(); 
app.on("my:event", function() { console.log(arguments); }); 
app.trigger("my:event"); 

Bu bir tane olmadığı anlamına gelmez, ve bahse girerim ki, bu şekilde yapılmasının iyi bir nedeni vardır. Application.vent s işlevselliğini Application üst üste yaptığı '

cevap

3

iken Backbone.Wreqr örneğidir çünkü dahili olaylar, bu/tetikleyici olay mekanizması üzerinde sadece basit daha fazla işlevsellik ekler. Bu, modüllerin birbirleriyle daha kolay iletişim kurmasını sağlamak için komut olayları ve bir istek/yanıt mekanizması ekler.

Yine de bunun merkezinde sadece olaylar var, ancak modüller arası iletişimi takip etmeyi biraz daha kolaylaştırmayı amaçlıyor.

+0

Tamam, ama hiçbir şey basit bir olay yerine RequestResponse veya Command davranışı istediğimde, Application.vent' kullanmamı engelliyor mu? Yoksa anlamadığım bir şekilde etkileşim kuruyorlar mı? – Crisfole

+0

Doğru. Application.vent'in davranışı, 'Uygulamanın' basit olay işleminden ayrıdır; böylece ihtiyaçlarınıza göre hangisini kullanacağınızı seçebilirsiniz. –

İlgili konular