使用Pub / Sub在模块之间进行通信来维护复杂结构的最佳实践是什么?
我完成了我的最后一个项目,其中有很多模块很好地解耦(甚至可能“过度耦合”)。但是如果想要调试某些内容或更改事件订阅并发布,则需要使用大量CTRL+F
来查找对特定事件感兴趣的所有代码部分。是否有更好的基于事件的通信管理模式?我使用Marionette
及其EventAggregator
作为pub / sub。
答案 0 :(得分:0)
您正在描述 RequestResponse 对象的确切用例。
https://github.com/marionettejs/backbone.marionette/blob/master/docs/marionette.requestresponse.md
处理程序:
var App = new Marionette.Application();
App.reqres.setHandler("foo", function(bar){
return bar + "-quux";
});
请求:
App.request("foo", "baz"); // => returns "baz-quux"