从DataStore声明全局变量

时间:2012-05-18 11:50:53

标签: extjs

我想声明一个从DataStore获取值的全局变量。

var myStore = new Ext.data.Store({
        id: 'ID_myStore',
        proxy: new Ext.data.HttpProxy({
                url: 'get.php',      
                method: 'POST'
            }),
        baseParams:{task: "LIST"}, 
        reader: new Ext.data.JsonReader({   
                    root: 'results',
                    totalProperty: 'total',
                    id: 'id'
                },[ 
                   {name: 'Class', type: 'string', mapping: 'class'}
              ])
    });

        var BestClass = myStore.getAt(0).get('Class');

1 个答案:

答案 0 :(得分:1)

Ooo是一个异步问题。

你需要听回调,然后再做。

var myStore = new Ext.dataStore({......
});
var bestClass;
myStore.on('load',function(store,record){
 bestClass = store.getAt(0).get('Class');
},this)

请注意,虽然这是如何做到的答案,但它不会与其他所有内容同时被调用,它是一个事件(你听到),因此变量将被定义,直到服务器具有回应。