`
13594135
  • 浏览: 190145 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Ext.data.JsonReader的fields属性详解(转)

    博客分类:
  • Web
阅读更多
以下是部分代码。。主要说明的是convert和dateFamat函数

reader : new Ext.data.JsonReader({
      root: "kcInfoList",
      fields: [
       {name: "id"},
       {name: "contract", mapping:'contract.id'},
       {name: "summary", mapping:'summary'},
       {name: "startDate", type: 'date',dateFormat: 'Y-m-d\\TH:i:s'},
       {name: "endDate", type: 'date',dateFormat: 'Y-m-d\\TH:i:s'},
       {name: "supplierLinkman"},
       {name: "checker", mapping:'checker', convert:function(v){
         if(v)
          return v.id;
         else
          return "";
        }
       },
       {name: "executiveStatus", mapping:'executiveStatus', convert:function(v){
         if(v)
          return v.id;
         else
          return "";
        }
       },
       {name: "isMeet"},
       {name: "description"},
       {name: "noMeetContents"},
       {name: "noMeetReason"}
      ]
     }),



从上面的例子可以看出

创建包含指定字段结构的继承自Ext.data.Record的类。静态方法。

参数:
  o : Array
    一个定义记录结构的字段信息数组。每个数组元素包含name,其他可选的有:mapping、type。通过它们,可以让Ext.data.Reader从一个数据对象中获取各字段的值。每个字段定义对象都可能包含如下属性:

     name : String
     在记录中标志一个字段的名字。它通常用于引用指定字段,例如,在定义Ext.grid.ColumnModel的dataIndex属性时,要传过去的。
     
     mapping : String
     当在Ext.data.Reader中创建记录时,如何将json对象中指定属性值映射到此字段。

     type : String
     字段的类型,可能值为:
       auto(默认值,没有任何转化)、string、int、float、boolean、date
         
            sortType : Mixed
     Ext.data.SortTypes中的一个成员。

     sortDir : String
     排序方式,"ASC"或者"DESC"。

     convert : Function
     如果要对这个字段的值进行一些物殊处理,这时需要一个能定制的回调,用它来手工处理值。它的参数如下:
        v : Mixed
        通过mapping映射找到的值。已从json中取出来的。
        rec : Mixed
        在json中的,对应于此记录的json对象。

     dateFormat : String
     用于Date.parseDate函数的格式化字符串。

     defaultValue : Mixed
     当字段值在原数据中不存在时所取的默认值,默认为空字符串。


当然上面的代码还可以用另外的形式来表达,如:

   var contentNode = new Ext.data.Record.create([
       {name: 'projectId', type: 'int'},
            {name: 'project', type: 'string'},
            {name: 'taskId', type: 'int'},
            {name: 'description', type: 'string'},
            {name: 'estimate', type: 'float'},
            {name: 'rate', type: 'float'},
            {name: 'cost', type: 'float'},
            {name: 'due', type: 'date', dateFormat:'m/d/Y'}
    ]);
var reader = new Ext.data.JsonReader({root:'data',id:'taskId'},contentNode);


分享到:
评论

相关推荐

    Extjs 继承Ext.data.Store不起作用原因分析及解决

    关于这个原因有很多种,我只说下我遇到的 我这样 ... this.reader = new Ext.data.JsonReader( { totalProperty: ‘results’, root: ‘rows’, id:’docid’, fields: [‘docid’, ‘extention’,’docname’, ‘autho

    Ext.DataView 图片列表显示

    var reader = new Ext.data.JsonReader({totalProperty:'totalProperty',root:'root'},record); store = new Ext.data.Store({ proxy:proxy, reader:reader }); //尾 分页 var pagebar = new Ext....

    EXT核心API详解

    33、Ext.data.JsonReader类 …………… 26 34、Ext.data.XmlReader类 …………… 27 35、Ext.data.Store类 …………………… 28 36、Ext.data.GroupingStore类 ………… 32 37、Ext.data.SimpleStore类 ………… 34 ...

    extJs 2.1学习笔记

    7. Ext.data.JsonReader篇一 12 8. Ext.data.JsonReader篇二 15 9. Ext.data.HttpProxy篇 19 10. Ext.data.Connection篇一 20 11. Ext.data.Connection篇二 24 12. Ext.Updater篇一 26 13. Ext.Updater篇二 27 14. ...

    ExtJs学习笔记,共30讲

    7. Ext.data.JsonReader篇一 12 8. Ext.data.JsonReader篇二 15 9. Ext.data.HttpProxy篇 19 10. Ext.data.Connection篇一 20 11. Ext.data.Connection篇二 24 12. Ext.Updater篇一 26 13. Ext.Updater篇二 27 14. ...

    ExtJS入门教程(超级详细)

    33、Ext.data.JsonReader类 …………… 26 34、Ext.data.XmlReader类 …………… 27 35、Ext.data.Store类 …………………… 28 36、Ext.data.GroupingStore类 ………… 32 37、Ext.data.SimpleStore类 ………… 34 ...

    精通JS脚本之ExtJS框架.part1.rar

    13.6.3 Ext.data.JsonReader 13.6.4 Ext.data.XmlReader 13.7 Ext.ux.DWR 13.7.1 Ext.data.DwrProxy 13.7.2 Ext.data.DWRTreeLoader 13.7.4 Web服务端配置 13.7.5 服务层接口 第14章 ExtJS扩展 14.1 利用Ext...

    精通JS脚本之ExtJS框架.part2.rar

    13.6.3 Ext.data.JsonReader 13.6.4 Ext.data.XmlReader 13.7 Ext.ux.DWR 13.7.1 Ext.data.DwrProxy 13.7.2 Ext.data.DWRTreeLoader 13.7.4 Web服务端配置 13.7.5 服务层接口 第14章 ExtJS扩展 14.1 利用Ext...

    Ext深入浅出 数据传输

    10.1 Ext.data简介............................................230 10.2 Ext.data.Connection....................230 10.3 Ext.data.Record .............................232 10.4 Ext.data.Store ................

    Ext+JS高级程序设计.rar

    7.3 Ext.data.Record 198 7.4 ArrayReader、JsonReader和XmlReader 199 7.4.1 JsonReader 200 7.4.2 ArrayReader 200 7.4.3 XmlReader 201 7.5 Store的加载数据 201 7.6 Store的数据操作 203 7.6.1 添加数据 203 ...

    JsonReader-v1.zip

    JSON阅读器

    基于extjs的.NET3.5控件Coolite 1.0.0.34580(Preview预览版)

    基于extjs的.NET3.5控件Coolite 1.0.0.34580 (Preview预览版), ... The old inner <Fields> property of <ext:MultiField> should now be configured in the <Items> property of <ext:CompositeField>.

    extJs 下拉框联动实现代码

    parentid=1001’ }), reader: new Ext.data.JsonReader({ root: ‘list’, id: ‘id’ }, [ {name: ‘id’, mapping: ‘id’}, {name: ‘mc’, mapping: ‘name’} ]) }); // 第二个下拉框 var childStore = new Ext...

    mvc, ruby EXTJS 工具.zip

    mvc, ruby EXTJS 工具 mvc帮助器,MVC mixin和 PORs ( plain-old-ruby-object ),帮助自动生成 EXTJS 存储,包括它的关联的DataReader ( ext.data. jsonreader,Ext.data. Xm

    C#.Net2.0解析Json,精简版的Newtonsoft.Json.dll,JsonReader,JsonSerializer(Json.Net)

    仅保留了读取和解析json数据的相关类和方法(JsonReader,JsonSerializer),去除了写入json数据以及json和xml互相转换的部分以及其他不常用的类。 编译后dll仅20kb 也可以直接将类添加到项目中使用,非常方便 再次声明...

    extjs DataReader、JsonReader、XmlReader的构造方法

    DataReader、JsonReader、XmlReader的构造方法,需要的朋友可以参考下。

    Ext 开发指南 学习资料

    8.4. Ext.data命名空间 8.4.1. proxy系列 8.4.1.1. 人畜无害MemoryProxy 8.4.1.2. 常规武器HttpProxy 8.4.1.3. 洲际导弹ScriptTagProxy 8.4.2. reader系列 8.4.2.1. 简单易行ArrayReader 8.4.2.2. 灵活轻便...

    ExtJs纵坐标值重复问题的解决方法

    写在前面,版本库:Ext JS Library 3.3.1 做图表的时候纵坐标很多值都是一样的,无意中发现下面的解决方法,自己测试是可以了,写出来以备后查,以便他人查看。... var json_reader = new Ext.data.JsonReader( { i

    EXT2.0中文教程

    8.4. Ext.data命名空间 8.4.1. proxy系列 8.4.1.1. 人畜无害的MemoryProxy 8.4.1.2. 常规武器HttpProxy 8.4.1.3. 洲际导弹ScriptTagProxy 8.4.2. reader系列 8.4.2.1. 简单易行ArrayReader 8.4.2.2. 灵活轻便...

Global site tag (gtag.js) - Google Analytics