Ext.data.DataProxy
数据代理类是一个纯虚类,主要用于生成Ext.data.Record对象,没有公开的属性和方法,只是归定子类需要处理三个事件
beforeload : ( Object This, Object params )
load : ( Object This, Object o, Object arg )
loadexception : ( Object This, Object o, Object arg, Object e )
事实上参数也是子类自定义的

Ext.data.HttpProxy
api文档中说httpProxy是从object继承来的,事实上source中它和下面的Ext.data.MemoryProxy/Ext.data.ScriptTagProxy都继承于DataProxy
HttpProxy用于远程代理,而且服务端返回信息时必须指定Content-Type属性为"text/xml".

HttpProxy( Object conn )
构造一个HttpProxy对象,参数可以是一个类似于{url: 'foo.php'}这样的json对象,也可以是一个Ext.data.Connection对象,如果参数没有指定,将使用Ext.Ajax对象将被用于发起请求

getConnection() : Connection
得到当前连接对象

load( Object params, Ext.data.DataReader reader, Function callback, Object scope, Object arg ) : void
从配置的connection对象得到record数据块,并激发callback
params:        发起http请求时所要传递到服务端的参数
DataReader:    见DataReader
callback:    回叫方法,第一个参数为接收到的信息,第二个参数为arg,第三个是成功标志
scope:        范围
arg:        这儿的参数将会传递给回叫函数callback

使用示例:
var proxy=new Ext.data.HttpProxy({url:'datasource.xml'});
    //关于reader将会在Ext.data.DataReader中讲解
    var reader = new Ext.data.XmlReader({
       totalRecords: "results",
       record: "row",        
       id: "id"                
    }, [
       {name: 'name', mapping: 'name'},
       {name: 'occupation'}           
    ]);
   
    //定义回叫方法
    var metadata;
    function callback(data,arg,success){
        if(success){
            metadata=data;
        }
    }
    //从connection配置的url中利用reader将返回的xml文件转为元数据,并传递给callback
    proxy.load( null,reader,callback,this);

Ext.data.MemoryProxy
MemoryProxy( Object data )
构造
load( Object params, Ext.data.DataReader reader, Function callback, Object scope, Object arg ) : void
取数据,和HttpProxy类似,只是params参数没有被使用

使用示例
var proxy=new Ext.data.MemoryProxy([ [1, 'Bill', 'Gardener'], [2, 'Ben', 'Horticulturalist'] ]);
var reader = new Ext.data.ArrayReader(
{id: 0},
[
{name: 'name', mapping: 1},        
{name: 'occupation', mapping: 2}   
]);

var metadata;
function callback(data,arg,success){
    metadata=data;
}
proxy.load( null,reader,callback,this);

Ext.data.ScriptTagProxy
这个类和HttpProxy类似,也是用于请求远程数据,但能用于跨主域调用,如果请求时使用了callback参数
则服务端应指定Content-Type属性为"text/javascript"
并返回callback(jsonobject)
反之则应置Content-Type属性为"application/x-json"
并直接返回json对象

ScriptTagProxy( Object config )
构造,其中
config定义为{
callbackParam : String,    //回叫参数
nocache : Boolean,    //是否缓存
timeout : Number,    //超时
url : String        //请求数据的url
}

abort() : void
放弃

load( Object params, Ext.data.DataReader reader, Function callback, Object scope, Object arg ) : void
参见HttpProxy

转载于:https://www.cnblogs.com/qcl_008/archive/2009/01/09/1372612.html

Ext.data-DataProxy/ HttpProxy/ MemoryProxy/ ScriptTagProxy相关推荐

  1. extJS 中 ext.data 介绍

    ext.data 最主要的功能是获取和组织数据结构,并和特定控件联系起来,于是,Ext.data成了数据的来源,负责显示数据. Ext.data在命名空间中定义了一系列store.reader和pro ...

  2. Ext.data.Store介绍

    store是一个为Ext器件提供record对象的存储容器,行为和属性都很象数据表  先看一段代码: var store = new Ext.data.Store({ proxy:new Ext.da ...

  3. Ext.data.Connection

    Ext.data.Connection 2013年7月24日 14:54 Ext.data在命名空间中定义了一系列store.reader.proxy,Grid和ComboxBox都是Ext.data ...

  4. ExtJs6 理解 -- Ext.data.proxy.Proxy

    2019独角兽企业重金招聘Python工程师标准>>> 1. Ext.data.proxy.Proxy 分类 Proxy 分为 client 和 Server 两种 Client: ...

  5. ext store 数据修改_extjs 之Ext.data.Store变更单行记录值【修改】

    1.record声明如下 machineuse_record = Ext.data.Record.create([{ name : 'id', type : 'int' }, { name : 'pr ...

  6. ExtJs之Ext.data.Store

    因为上次用过Ext.data.Store,觉得挺重要的,  故转载了一篇http://blog.csdn.net/davidxj/archive/2009/04/23/4103647.aspx Ext ...

  7. 4.Ext JS Ext.data.Store本地过滤

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/inforstack/article/details/53608732 var myStore = E ...

  8. Ext.data.GroupingStore

    Ext.data.GroupingStore 继承自Ext.data.Store,为Store增加了分组功能.其它用法与Store一致,惟一需要注意的是使用GroupingStore时必须指定sort ...

  9. Ext.data.reader.Json reader: json

    The JSON Reader is used by a Proxy to read a server response that is sent back in JSON format. This ...

最新文章

  1. android 开发文档模板
  2. [蓝桥杯][基础练习VIP]完美的代价-贪心
  3. neo4j导入两个文件_Neo4j:找到两个纬度/经度之间的中点
  4. 计算机应用类型分类 余额宝属于,按计算机应用的类型分类,余额宝属于。
  5. android http常用配置,Android中Retrofit+OkHttp进行HTTP网络编程的使用指南
  6. 击败特斯拉!它拿下全球电动车型销量冠军,但售价仅是Model 3的零头
  7. 95-290-240-源码-内存管理-StreamRecord-StreamRecord简介
  8. Vue3+CLI4 使用Element-ui
  9. c语言z基本数据类型文档,C语言基本数据类型
  10. 协程 c语言,协程-C语言实现
  11. MeiTuanLocateCity
  12. 去掉GaussView启动警告窗口的办法
  13. FastDFS文件存储系统
  14. Powermill数控编程培训,潇洒模具三步教您精通cnc数控编程
  15. input type=file 的onchange事件
  16. c语言输入任意两个数求乘积,C语言程式 从键盘输入两个小数,输出它们的和及乘积...
  17. vue函数@click.prevent使用纪要
  18. python制作浏览器
  19. 全国大学计算机专业排名2021,2021全国计算机专业大学排名一览表
  20. STM32的中断向量表是干什么的?到底有什么用?它放在哪里?

热门文章

  1. router 53 亚马逊_亚马逊53号公路
  2. 自定义iOS UIPickerView
  3. log4j.properties文件中的log4j.rootLogger重要性
  4. 更换map的遍历顺序优先级_树的级别顺序遍历或宽度优先遍历
  5. python3 super_Python super()– Python 3 super()
  6. ROS的学习(十二)用C++写一个简单的发布者
  7. Python写数据结构:单向循环链表
  8. C++高级进阶教程之STL 教程
  9. JavaScript对象与创建对象的方式
  10. solidity语言介绍以及开发环境准备