参考文档
http://docs.sencha.com/touch/2.3.1/#!/api/Ext.data.proxy.JsonP
http://docs.sencha.com/touch/2.3.1/#!/guide/proxies
一、定义model
Ext.define("MOA.model.Person", {
extend: "Ext.data.Model",
config: {
fields: [
{name: "id", type: "string"},
{name: "psnImg", type: "string"},
{name: "psnName", type: "string"},
{name: "psnSex", type: "string"},
{name: "registrationCode", type: "string"},
{name: "tel", type: "string"}
]
}
});
代码解析:
fields中定义该类的字段和类型
二、定义Store
Ext.define("MOA.store.PersonStore",{
extend: "Ext.data.Store",
xtype: "personStore",
config: {
model: "MOA.model.Person",
proxy: {
type: "jsonp",
url: "http://192.168.168.168:7777",
reader: {
type: 'json',
rootProperty: 'users'
}
}
}
});
代码解析:
1、model属性对应上面定义的model类
2、proxy 属性对应代理类
type属性的jsonp为Ext.data.proxy.JsonP类
url属性为请求数据的路径
reader属性中的rootProperty对应server端传回的数据的根属性
server端回传的数据格式如下:
{
users: [
{
id: 1,
name: "Ed Spencer",
email: "ed@sencha.com"
}
]
}
三、读取数据
var p = Ext.create('MOA.store.PersonStore');
p.load({params : {
id : ""
},
callback: function(records,operation,success){
console.log(records);
}
});