在JavaScript中,JSON是一种非常重要的数据格式,key:value的形式比XML那种复杂的标签结构更容易理解,代码量也更小,很多人倾向于使用它作为EXT的数据交换格式。
Ext.data.DataReader (meta, recordType)
meta:
totalProperty: json数据中,保存总记录数的属性
successProperty: json数据中,保存是否返回成功的属性名
root: json数据中,保存记录集的属性的属性名
id: json数据中,记录中主键所对应的列的属性名
为Json- Reader准备的JSON数据如下面的代码所示:
//JSON数据
var json = { 'results': 2,
'rows': [
{ 'id': 1, 'name': 'Bill', occupation: 'Gardener' },
{ 'id': 2, 'name': 'Ben', occupation: 'Horticulturalist' }
]
};
与数组相比,JSON的最大优点就是支持分页,我们可以使用totalProperty参数表示数据的总量。
successProperty参数是可选的,可以用它判断当前请求是否执行成功,进而判断是否进行数据加载。
在不希望JsonReader处理响应数据时,可以把successProperty设置成false。
现在来讨论一下JsonReader,看看它是如何与上面的JSON数据对应的,如下面的代码所示:
//JsonReader var reader = new Ext.data.JsonReader( { totalProperty: "results", //totalRecords属性由json.results得到 successProperty: true, //json数据中,保存是否返回成功的属性名 root: "rows", //构造元数据的数组由json.rows得到 id: "id" //id由json.id得到 }, [ { name: 'name', mapping: 'name' }, { name: 'occupation'} //如果name与mapping同名,可以省略mapping ]
);
Ext.data.DataReader (meta, recordType)
meta:
totalProperty: json数据中,保存总记录数的属性
successProperty: json数据中,保存是否返回成功的属性名
root: json数据中,保存记录集的属性的属性名
id: json数据中,记录中主键所对应的列的属性名
为Json- Reader准备的JSON数据如下面的代码所示:
//JSON数据
var json = { 'results': 2,
'rows': [
{ 'id': 1, 'name': 'Bill', occupation: 'Gardener' },
{ 'id': 2, 'name': 'Ben', occupation: 'Horticulturalist' }
]
};
与数组相比,JSON的最大优点就是支持分页,我们可以使用totalProperty参数表示数据的总量。
successProperty参数是可选的,可以用它判断当前请求是否执行成功,进而判断是否进行数据加载。
在不希望JsonReader处理响应数据时,可以把successProperty设置成false。
现在来讨论一下JsonReader,看看它是如何与上面的JSON数据对应的,如下面的代码所示:
//JsonReader var reader = new Ext.data.JsonReader( { totalProperty: "results", //totalRecords属性由json.results得到 successProperty: true, //json数据中,保存是否返回成功的属性名 root: "rows", //构造元数据的数组由json.rows得到 id: "id" //id由json.id得到 }, [ { name: 'name', mapping: 'name' }, { name: 'occupation'} //如果name与mapping同名,可以省略mapping ]
);
本文介绍了JSON作为一种常用数据格式在JavaScript中的应用,特别是在Ext框架中如何通过Ext.data.DataReader配置JSON数据,实现与服务器的数据交互。文章详细解释了totalProperty、successProperty等参数的作用,并展示了如何构建JsonReader实例。
6392

被折叠的 条评论
为什么被折叠?



