数据代理proxy是进行数据读写的主要途径,通过代理操作数据进行CRUD
每一步操作全会得到唯一的Ext.data.Operation实例他包含了所有的请求参数
1.数据代理proxy目录结构
Ext.data.proxy.Proxy 代理类的根类(他分为客户端(Client)代理和服务器代理(Server))
Ext.data.proxy.Client 客户端代理
Ext.data.proxy.Memory 普通的内存代理 ----[重点]
Ext.data.proxy.WebStorage 浏览器客户端存储代理
Ext.data.proxy.SessionStorage 浏览器级别代理----[重点]
Ext.data.proxy.LocalStorage 本地化的级别代理(不能夸浏览器)----[重点]
Ext.data.proxy.Server 服务器端代理
Ext.data.proxy.Ajax 异步加载的方式----[重点]
Ext.data.proxy.Rest 一种特使的Ajax--[知道]
Ext.data.proxy.JsonP 跨域交互的代理----[重点] 跨域是有严重的安全隐患的 extjs的跨域也是需要服务器端坐相应的配合
Ext.data.proxy.Direct 命令.
3+方式的代理
//操作内存数据 (function(){ Ext.onReady(function(){ Ext.regModel("user",{ fields:[ {name:'name',type:'string'}, {anem:'age',type:'int'} ] }); //不用create方法 我们直接用proxy来创建对象数据 var userData = [ {name:'uspcat.com',age:1}, {name:'yunfengcheng',age:26} ]; //创建model的代理类 var memoryProxy = Ext.create("Ext.data.proxy.Memory",{ data:userData, model:'user' }) userData.push({name:'new uspcat.com',age:1}); //update memoryProxy.update(new Ext.data.Operation({ action:'update', data:userData }),function(result){},this); //就可以做CRUD了 memoryProxy.read(new Ext.data.Operation(),function(result){ var datas = result.resultSet.records; Ext.Array.each(datas,function(model){ alert(model.get('name')); }) }); }); })();
//'sessionstorage' 将数据保存到本地并操作,将在关闭浏览器清空数据。 (function(){ Ext.onReady(function(){ Ext.regModel("user",{ fields:[ {name:'name',type:'string'} ], proxy:{ type:'sessionstorage', id : 'twitter-Searches' } }); //我们用store来初始化数据 var store = new Ext.data.Store({ model:user }); store.add({name:'yunfengcheng'}); store.sync(); store.load(); var msg = []; store.each(function(rec){ msg.push(rec.get('name')); }); alert(msg.join("\n")); }) })();
//将数据保存到本地(不能跨浏览器)并操作,关闭浏览器无影响。 //每次刷新页面 数据都会累加 (function(){ Ext.onReady(function(){ Ext.regModel("user",{ fields:[ {name:'name',type:'string'} ], proxy:{ type:'localstorage', id : 'twitter-Searches' } }); //我们用store来初始化数据 var store = new Ext.data.Store({ model:user }); store.add({name:'uspcat.com'}); store.sync(); store.load(); var msg = []; store.each(function(rec){ msg.push(rec.get('name')); }); alert(msg.join("\n")); }) })();
//异步请求服务器的数据 (function(){ Ext.onReady(function(){ Ext.regModel("person",{ fields:[ {name:'name',type:'string'} ] }); var ajaxProxy = new Ext.data.proxy.Ajax({ url:'person.jsp', model:'person', reader:'json', limitParam : 'indexLimit' //指定传递给后台分页参数的名字 }); ajaxProxy.doRequest(new Ext.data.Operation({ action:'read', limit:10, start :1, sorters:[ //传递给后台排序的参数 new Ext.util.Sorter({ property:'name', direction:'ASC' }) ] }),function(o){ var text = o.response.responseText; alert(Ext.JSON.decode(text)['name']); //将json字符串转换为对象 }); }); })();
//跨域请求数据 (function(){ Ext.onReady(function(){ Ext.regModel("person",{ fields:[ {name:'name',type:'string'} ], proxy:{ type:'jsonp', url:'http://www.uspcat.com/extjs/person.php' } }); var person = Ext.ModelManager.getModel('person'); person.load(1,{ scope:this, success:function(model){ alert(model.get('name')); } }); }) })();
相关推荐
Extjs4.1 小例子(适合extjs初学者学习使用).直接导入myeclipse即可
extjs初学者学习资料 doc文档版本 非常适合新手学习的资料
100多个ExtJS应用初学实例集,采用最新框架实现。
适合Extjs初学者使用,让初学者对Extjs有一个初步的认识,文件所提到的都是必须要掌握的知识。
EXTJS学习,webform+mvc routeing extjs布局 适合初学者
EXT已经是AXAJ框架中的矫子。这个资料是在网上下载的,非常不错很适合初学者,一看就会,一做就对。拿来给大家分享!绝对精品
对初学者学习ext很有帮助,里面对ext做了一个整体的说明,并且有部分列子
ext初学一些控件介绍以及使用方法. extjs里用的最多的 弹框 表格grid
自己 整理的 EXTJS 文档 适合初学者
对Extjs初学者有帮助对Extjs初学者有帮助对Extjs初学者有帮助对Extjs初学者有帮助对Extjs初学者有帮助
Vs2005+Access+Asp.net+Extjs简单三层架构源码 由51编程网站提供,代码由51编程-代码器自动生成。 共生成5种文件格式: Model: 实体层 BLL : 逻辑层 Dal: 数据层(主键自动增长,新增时都需要屏蔽) Ext.aspx: ...
extjs初体验 适合extjs初学者 extjs版本为4.2.1 结构简单 适合入门
ExtJS初学者,学习的一个不错的例子,一看就懂,很不错的; ExtJS初学者,学习的一个不错的例子,一看就懂,很不错的; ExtJS初学者,学习的一个不错的例子,一看就懂,很不错的
这里面有三个extjs的小例子,其中testb.html和testc.html所实现的效果是一样的,只不过testb.html里面的控件全是用extjs创建的,而testc.html是extjs与jsp的结合。例子很简单,主要记录自己每天的成长经历!
EXTJS应用EXTJS应用EXTJS应用EXTJS应用EXTJS应用EXTJS应用
三、Extjs布局 EXTJS4自学手册——EXT容器布局(Auto,Anchor,Absolute,Hbox) EXTJS4自学手册——EXT容器布局(Vbox,Accordion,Table,Column) EXTJS4自学手册——EXT容器布局(Fit,Card,Border) EXTJS4自学手册...
用于Extjs初学者学习Extjx,是入门的好材料
ExtJs DWR扩展 DWRProxy、DWRTreeLoader、DWRGridProxy,经过EXT3.0版本测试! 通过DWR向Ext提供数据!非常棒的扩展!
第三讲:extjs4.0数据模型--Model 第四讲:extjs4.0的数据代理-Proxy 第五讲:extjs4.0的读写器reader,writer 第六讲:extjs4.0的数据集store 第七讲:extjs4.0的事件机制Event 第八讲:extjs4.0的Ajax 第九讲:...
extjs资料extjs资料extjs资料extjs资料extjs资料