读书人

费解ext4中的Ext.data.Stroe为何小弟

发布时间: 2013-12-23 14:30:52 作者: rapoo

费解ext4中的Ext.data.Stroe,为何我用Ajax后台取到了值,但alert(mytore.getCount())老是为0?
先看代码:


Ext.define('User', {
extend: 'Ext.data.Model',
fields: [
{name: 'id', type: 'string'},
{name: 'name', type: 'string'}
]
});

var myStore = Ext.create('Ext.data.Store', {
model: 'User',
proxy: {
type: 'ajax',
url: '/users.json',
reader: {
type: 'json',
root: 'users'
}
},
autoLoad: true
});

URL:/users.json取到的值为:
{users:[{"id":"1","name":"张三"},{"id":"2","name":"李四"}]} //在浏览器中输入URL,显示出的值

按理说,这时:alert(mytore.getCount())值应为2吧?但居然为0!实在看不出那里出问题了,请高人指教。
另外,我用的是ext4.1的,不知道版本有没BUG
[解决办法]
值还没到;

function g(){
var $a = userStore;



}

setTimeout(g,1000);
[解决办法]
Ext.onReady(function() {
Ext.define('User', {
extend: 'Ext.data.Model',
fields: [
{name: 'id', type: 'string'},
{name: 'name', type: 'string'}
]
});

var myStore = Ext.create('Ext.data.Store', {
model: 'User',
proxy: {
type: 'ajax',
url: 'users.json',
reader: {
type: 'json',
root: 'users'
}
},
autoLoad: true
});

function g (){
var $a = myStore;
var $b = myStore.getCount();


}
setTimeout(g,1000);






});

[解决办法]
Ext.onReady(function() {





Ext.define('User', {
extend: 'Ext.data.Model',
fields: [
{name: 'id', type: 'string'},
{name: 'name', type: 'string'}
]
});

var myStore = Ext.create('Ext.data.Store', {
model: 'User',
proxy: {
type: 'ajax',
url: '/users.json',
reader: {
type: 'json',
root: 'users'
}
},
autoLoad: {
callback : function(){
var $a = myStore;


var $b = myStore.getCount();
alert($b);



}}
});

});

读书人网 >JavaScript

热点推荐