Creé una aplicación javascript con todo el código en un archivo. La aplicación ha crecido bastante y creo que es hora de dividirla en varios archivos, pero me está costando trabajo encontrar la manera de hacerlo. Creo que el problema radica en cómo me he decidido construir la aplicación, que utiliza la siguiente plantilla:¿Cómo puedo dividir una aplicación de JavaScript en varios archivos?
var myApp = function(){
//there are several global variables that all of the modules use;
var global1, global2, module1, module2;
global1 = {
prop1:1
};
//There are also several functions that are shared between modules
function globalFunction(){
}
var ModuleOne = function(){
function doSomething(){
//using the global function
globalFunction();
}
return{
doSomething:doSomething
}
};
var ModuleTwo = function(){
function doSomething(){
//module 2 also needs the global function
globalFunction();
//Use the functionality in module 1
//I can refactor this part to be loosely coupled/event driven
module1.doSomething();
}
};
module1 = new ModuleOne();
module2 = new ModuleTwo();
};
Incluso si todos los módulos fueron acoplamiento flexible y orientada a eventos, todavía no saben cómo lo haría dividir esto en varios archivos dada la dependencia de cada módulo en las funciones/variables compartidas. ¿Alguien tiene sugerencias?
En serio, herramientas como [module8] (https://github.com/clux/modul8) resuelva su problema – Raynos
Eche un vistazo al patrón de diseño en este artículo: http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In- Profundidad - usted puede dividir la definición de su módulo en varios archivos de manera que permita compartir propiedades comunes, pero también le permite crear variables o métodos que son privados solo para un archivo en particular. – nnnnnn
@nnnnnn Gracias. Voy a comprobarlo ahora. –