【发布时间】:2013-10-04 15:39:57
【问题描述】:
在我的应用程序中有几个模块各自负责,这就是我有些困惑的地方..
模块之间如何通信?
如何通知或侦听模块之间的决策以针对适当的场景做出决定..?
示例:
模块 1,
var MyModule1 = (function() {
var myPrivateData = 303;
function myPrivateFunction() {
alert('private');
}
return {
myPublicData : 42,
myPublicFunction : function() {
alert('public');
}
};
})();
模块 2
var MyModule2 = (function() {
var myPrivateName = privatized;
function myPrivateFunction() {
alert(myPrivateName) ;
}
return {
myPublicData : 42,
myPublicFunction : function() {
alert('public');
}
};
})();
我怎样才能让他们互相交流和倾听..?谁能用一些小例子来澄清一下?我需要共享与 module2 共享的 privateData 和与 module1 共享的 myPrivate 名称,以防触发任何点击事件。
提前致谢!
【问题讨论】:
-
可能是。但我需要最好的方法,即使是我的错误,请纠正我。
-
尝试实现发布/订阅模式。 stackoverflow.com/a/13513915/294076
-
我建议使用沙箱,每个模块不应该知道其他模块。
-
@LightStyle,这就是我想知道的,你能举个例子吗?
-
我不使用设计模式,因为我做的事情很简单,但是'2。如何在...之间通知或侦听模块'听起来像是观察者模式。如果您的应用程序很大/很复杂,您可能需要考虑使用设计模式。额外的代码,但结构良好。只是一个想法
标签: javascript jquery oop module