Carga remota de Store (Sigo el tutorial:¿Qué es un store y cómo funciona?
Hola amigos(as),
Les cuento que soy muy nuevo en el uso de ExtJs y he estado trabajando en un pequeño proyecto y en el que algo he avanzado... hasta que me encontré con un problema que me llevó a los cursos y tutoriales de Quizzpot, en particular al de la referencia. Ya conseguí hacerlo funcionar en ExtJs 4.2, pero no he podido cargar el Store de manera remota. Adjunto el js que ya adapte y funciona reproduciendo el tutorial y luego adjunto el que he tratado que me funcione de manera remota... pero no consigo
cargar los datos.
Agradeceré la ayuda que me puedan dar, porque ya llevo unos cuantos días de buscar, leer, probar y comenzar de nuevo, y me gustaría poder avanzar un poco más en mi tarea. Gracias.
El Tutorial que ya adapté para que funcione en ExtJs 4.2
Les cuento que soy muy nuevo en el uso de ExtJs y he estado trabajando en un pequeño proyecto y en el que algo he avanzado... hasta que me encontré con un problema que me llevó a los cursos y tutoriales de Quizzpot, en particular al de la referencia. Ya conseguí hacerlo funcionar en ExtJs 4.2, pero no he podido cargar el Store de manera remota. Adjunto el js que ya adapte y funciona reproduciendo el tutorial y luego adjunto el que he tratado que me funcione de manera remota... pero no consigo
cargar los datos.
Agradeceré la ayuda que me puedan dar, porque ya llevo unos cuantos días de buscar, leer, probar y comenzar de nuevo, y me gustaría poder avanzar un poco más en mi tarea. Gracias.
El Tutorial que ya adapté para que funcione en ExtJs 4.2
Ext.ns('com.quizzpot.tutorial'); com.quizzpot.tutorial.Store = { // aqui los datos que quisiera cargar de manera remota, aquí se hace de manera local data: [ //Dummy data for this tutorial ['Crysfel','Software developer','m',25], ['Sasha','Figure skater','f',23], ['Jack','Software Architect','m',35], ['John','Javascript developer','m',24], ['Sara','Tester','f',31], ['Sebas','Research Assistant','m',55] ], init: function(){ //creating a simple store this.store = new Ext.data.SimpleStore({ fields: [ //defining the fields {name:'name',mapping:1}, //mapping the fields {name:'occupation',mapping:2}, // with the array {name:'gender',mapping:3},// position {name:'age',mapping:4} ], id: 0 //the id of each record }); //loading the data from the local array this.store.loadData(this.data); console.log(this.store ); //listeners for the buttons Ext.fly('personBtn').on('click',this.find,this); Ext.fly('txt').on('keyup',function(event,cmd){ if(event.getKey() === event.ENTER){ //when press ENTER this.find(); // perform the search } },this); Ext.fly('ascBtn').on('click',this.orderAsc,this); Ext.fly('descBtn').on('click',this.orderDesc,this); Ext.fly('older2030Btn').on('click',this.query,this); Ext.fly('older30Btn').on('click',this.filter,this); Ext.fly('countBtn').on('click',this.count,this); }, orderAsc: function(){ this.store.sort('name','ASC'); // sort the store ASC this.store.each(function(record){ this.log(record.get('name')); //print each name },this); this.log('_____________ kk ____________________'); } // Resto de funciones }Aquí viene uno de tantos inteneto que he realizado... y que no funcionan
Ext.ns('piaalc'); Ext.define('MigrInterna', { extend: 'Ext.data.Model', fields: [ //defining the fields {name:'name',mapping:1}, //mapping the fields {name:'ocupation',mapping:2}, // with the array {name:'gender',mapping:3},// position {name:'age',mapping:4} ], }); var store = Ext.create('Ext.data.Store', { storeId: 'MigrIntStore', model: 'MigrInterna', remoteGroup: true, buffered: true, leadingBufferZone: 300, pageSize: 100, proxy: { type: 'ajax', url: 'SeleccionDeArchivos.php', reader: { type: 'json', root: 'MigrInt' } }, }); console.log(store ); // en la salida puedo ver que no ha cargado nada!! Ext.onReady(function(){ //listeners for the buttons Ext.fly('personBtn').on('click',this.find,this); Ext.fly('txt').on('keyup',function(event,cmd){ if(event.getKey() === event.ENTER){ //when press ENTER this.find(); // perform the search } },this); Ext.fly('ascBtn').on('click',this.orderAsc,this); Ext.fly('descBtn').on('click',this.orderDesc,this); Ext.fly('older2030Btn').on('click',this.query,this); Ext.fly('older30Btn').on('click',this.filter,this); Ext.fly('countBtn').on('click',this.count,this); }); // Por ahora me serviría sólo conseguir la carga del Store y luego testear el funcionamiento de los filtros, que es mi objetivo final
¿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.