我们在旗舰应用程序中使用ExtJS 3.x。我们的应用程序管理区域分为我们提供的不同模块。每个模块,以及随后模块的不同CRUD操作的每个页面都有自己的.js文件来处理功能。
当我们开始时,我们只是将所有代码都抛入Ext.onReady()
而不是真正担心全局命名空间(嘿......我们从未真正将自己视为javascript开发人员)。在获得ExtJS之后,我开始使用单例模式并从Ext.onReady()
调用init方法。
var newModule = {
propertyOne: 'asfd',
propertyTwo: 'asdf',
init: function() {
// set up
}
};
Ext.onReady(function() {
newModule.init();
});
这是javascript单例模式的正确使用吗?是否有任何模式比单例更适合ExtJS,比如说模块模式?
我一直在使用this guide作为学习Javascript设计模式的起点。
答案 0 :(得分:2)
我们最终决定升级到ExtJS并且似乎采用了新的MVC架构,设计ExtJS软件的最佳方法是使用Ext.application()
您可以阅读here。
答案 1 :(得分:1)
您可以查看here,例如创建自己的模块,文件Module.js。我们将这种模式用于我们自己的应用程序并且没有问题。
Ext.app.Module = function(config){
Ext.apply(this, config);
Ext.app.Module.superclass.constructor.call(this);
this.init();
}
Ext.extend(Ext.app.Module, Ext.util.Observable, {
init : Ext.emptyFn
});