La charge d'écoute sur le magasin de Extjs 4 ne fonctionne pas

Je cherchais quelque chose comme la "charge" auditeur de magasin dans Extjs 4, mais je suis confronté à quelques problèmes.

1) j'étais sous l'impression que la "réussite" de paramètre afin de "charger" auditeur méthode nous indique si l'opération a réussi ou non, mais de "succès" paramètre contient un tableau. Je ne sais pas quoi faire de ce tableau contient, mais après avoir invoqué la réussite.la longueur de la propriété, j'ai découvert qu'il contient nombre réel de lignes qui mon code côté serveur a envoyé une réponse. Donc, je pense que la "réussite" de la propriété contient mes données, mais je n'en suis pas sûre.

2) Si j'utilise Ext.méthode each() sur les "dossiers" ou "succès" du paramètre, je ne suis pas en mesure de voir les données chargées. Comment faire pour voir les données réelles?

De Code pour la boutique a l'air comme ci-dessous :

Ext.define('myCompany.store.customerDistribution', {
    extend: 'Ext.data.TreeStore',
    autoLoad: true,

    proxy: {
        type: 'ajax',
        url: 'data/customerDistribution/customerCount.json',
        reader: {
            type: 'array',
            root: 'resultset'
        }
    },
    listeners: {
        load: function(store, records, success) {
            /*console.log('store - ' + store +
                        ', typeof(store) - ' + typeof(store) +
                        ', records - ' + records +
                        ', records data - ' + records.data +
                        ', success - ' + success +
                        ', type of success - ' + typeof(success)+
                        ', success length - ' + success.length);
            if(records == true) {
                console.log('records is data property...');
            }
            if(store == true) {
                console.log('store is a data property...');
            }
            for(r in records) {
                console.log(r + '\ttypeof(r) -> ' + typeof(r));
            } */
            if(success && records.length > 0) {
                var allCountries = [];
                var previousCountry = undefined;

                var countryIndex = 0;
                var stateIndex = 1;
                var cityIndex = 2;
                var customerCountIndex = 3;

                Ext.each(records, function(record, index){
                    console.log('record - ' + record[0] + ', ' + record[1]);
                });
            }
        }
    }
});

Je suis en train de convertir en ligne en fonction json pour hiérarchique json pour être affiché dans l'arborescence. C'est pourquoi je suis à l'aide de la charge listner.
Mon Json se présente comme suit :

{
    "queryInfo":{"totalRows":"100"},

    "resultset":[
        ["India","India","India",63],
        ["India",""," Tirupati ",1],
        ["India",""," UTTARPARA ",1],
        ["India","Andhra Pradesh",null,61],
        ["India","Andhra Pradesh"," Chittoor ",1],
        ["India","Andhra Pradesh"," Guntur ",2],
        ["India","Andhra Pradesh"," Hyderabad ",58]
      ],
    "metadata":[
        {"colIndex":0,"colType":"String","colName":"Country"},
        {"colIndex":1,"colType":"String","colName":"State"},
        {"colIndex":2,"colType":"String","colName":"City"},
        {"colIndex":3,"colType":"Integer","colName":"customer_count"}
    ]
}

et je veux convertir :

"resultset": [
    countries: [
    {
        name: "India",
        customer_count: 63
        states: [
            {
                name: "Andhra Pradesh",
                customer_count: 61,
                cities: [
                    {
                        name: "Tirupati",
                        customer_count: 1
                    },
                    {
                        name: "UTTARPARA",
                        customer_count: 1
                    },
                    {
                        name: "Chittoor",
                        customer_count: 1
                    },

                    {
                        name: "Guntur",
                        customer_count: 2
                    },
                    {
                        name: "Hydrabad",
                        customer_count: 58
                    }
                ]
            }
        ]
    }
]

S'il vous plaît aider !!

InformationsquelleAutor Shekhar | 2012-02-10