No me entra en la cabeza, dividir la aplicacion en JS :?
Hola! pues nada que para mi ExtJs de pelos y todo maravilloso aprendiendo de los tutoriales, he logrado meterlo todo en Lotus Domino y desplegar y salvar datos <!-- s8-) --><!-- s8-) --> .. ahora.. siempre y cuando use un solo archivo .JS. pero apenas trato de dividir la aplicacion no logro que los elementos se comuniquen. (como ejemplo: el archivo "main.js" - que es donde esta el onReady - llama a la ventana A (cuyo codigo está, digamos en un archivo "a.js") y a la ventana B (cuyo codigo está, tambien digamos en otro archivo llamado "b.js") y se abren y todo, pero la ventana "A" no puede comunicarse con la ventana "B" o con "main.js" <!-- s:? --><!-- s:? -->
Estoy seguro que es algo sencillo, podria alguien ayudarme mostrandome un ejemplo bien sencillo de como hacer esto? tres archivitos y como se comunican entre los elementos? con eso me ayudarian muchisimo! esta onda ya me esta frustrando.. <!-- s:cry: --><!-- s:cry: -->
primero que nada revisa el orden en el que estas incluyendo los archivos JS, recuerda que si ventana A usa a ventana B, primero incuye el JS de ventana B y luego el de ventana A.
Ahora, supon que en B.js tienes algo así:
Ext.ns("com.myapp.alumnos"); com.myapp.alumnos.FormularioAlta = function(options){ var txt = new Ext.form.TextField(); var form = new Ext.form.FormPanel(.....); var win = new Ext.Windows(...); return { showForm: function(){ form.show(); }, setAlumno: function(alumno){ //aqui accedes a tus componentes internos }, getAlumno: function(){ return form.getForm().getValues(); } } }Ahora supon que en A.js tienes algo así:
Ext.ns("com.myapp.alumnos"); com.myapp.alumnos.Lista = function(options){ var form = new com.myapp.alumnos.FormularioAlta(); var grid = new Ext.grid.GridPanel(....); grid.on('rowclick',form.showForm); return { loadData: function(){ grid.getStore().load(); } } }Checa como es que estoy accediendo al código que hay en B.js desde A.js, lo que hago es crear instancias de mis módulos, y los puedo manipular mediante los métodos que haga, piensa en objetos, no andes creando solamente ventanas o componentes en el globalscope ya que eso no es nada bueno. saludos
Muchas gracias Men! se ve mas claro ahora! tanto programar en Lotus Domino me hace daño... <!-- s:lol: --><!-- s:lol: --> Voy a hacer mis pruebas este fin y ya te dire como me fue <!-- s;-) --><!-- s;-) -->
Grax again!
¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook
Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.