Javascript 在模块设计中使用构造$({})作为中介有哪些优点和缺点?
(当然,除了对jquery库的明显依赖之外。) 我的理由是:如果可以简化,就不要引入新的实体/代码。Javascript 在模块设计中使用构造$({})作为中介有哪些优点和缺点?,javascript,jquery,design-patterns,mediator,Javascript,Jquery,Design Patterns,Mediator,(当然,除了对jquery库的明显依赖之外。) 我的理由是:如果可以简化,就不要引入新的实体/代码。 例如: var app = {}; app.modules = {}; app.mediator = $({}); // response example app.mediator.on( 'some-event', function ( e, data ) { console.log( 'gotcha!', data ); }); // module example app.mod
例如:
var app = {};
app.modules = {};
app.mediator = $({});
// response example
app.mediator.on( 'some-event', function ( e, data ) {
console.log( 'gotcha!', data );
});
// module example
app.modules.module = ( function ( mediator ) {
// event trigger example
mediator.trigger( 'some-event', data );
})( app.mediator );
您实际上想要完成什么?假设:使用最少的代码将中介引入jquery项目您想要做什么,jquery自定义事件(没有新的中介对象)还不能做什么?jQuery自定义事件已经可以自己进行订阅、取消订阅和触发。我不想从任何页面html对象触发这些事件(原因:我可能会在将来删除它们?等等)。因此,这些都是定制事件,并且与我指定为中介的东西(以及拥有整个事件功能的东西——感谢jquery)相连接,使其成为一个显而易见的解决方案。