extjs json readerについて
5657 ワード
JavaScriptでは、JSONは非常に重要なデータフォーマットであり、key:valueの形式はXMLのような複雑なラベル構造より分かりやすく、コード量もより小さく、多くの人がEXTのデータ交換フォーマットとしてそれを使用する傾向がある.
Json Readerは改ページをサポートしています.JSONデータに対応するフォーマットは以下の通りです.
totalProperty: json , successProperty: json , root: json , id: json ,
例えば、Json-Readerのために準備されているJSONデータは、以下のコードで示しています.//JSONデータ
var Json={'results':2,
'ローソン':[
{id':1、'name':'Bill',occupation:'Gardener',
{id':2、'name':'Ben',occupation:'Horticulturalist'
]
};
JsonReader :
//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
]
);
jsonreaderはproxyから読み取ったデータを解析する必要があります.これらのデータはRecord配列に変換してからExt.data.Storeに提供できます.
JavaScriptでは、JSONは非常に重要なデータフォーマットであり、key:valueの形式はXMLのような複雑なラベル構造よりも分かりやすく、コード量もより小さく、多くの人がEXTのデータ交換形式として使用する傾向があります.JsonReaderのために準備したJSONデータは下記のコードの通りです.
var data={
id:0,
totalProperty:2、
success Property:true、
root:[
{id:'d 1',name:'name 1',descn:'descn 1',
{id:'d 2',name:'name 2',descn:'descn 2'}
」
jSONの最大の利点は、配列に比べて、データの総量をtotalPropertyパラメータで表すことができます.success Propertyパラメータは任意で、現在の要求が実行されたかどうかを判断して、データのロードが行われたかどうかを判断することができます.JsonReaderが応答データを処理しない場合、success Propertyをfalseに設定することができます.
Json Readerについて説明します.上のJSONデータとどのように対応しているかを確認してください.下記のコードの通りです.
var reader=new Ext.data.Json Reader({
success Property:「success property」、
totalProperty:「totalProperty」、
root:「root」
id:「id」
),[
{name:''id',mapping:'id'}
{name:''name',mapping:'name'}
{name:'descn',mapping:'descn'}
]]
nameとmapping部分の内容は同じですので、ここのmappingは省略できます.デフォルトはnameパラメータでJSONから対応データを取得します.JSONの名前と同じでないならば、mappingを使って修正してもいいです.しかし、mappingはここに他の用途があります.コードリスト10-3に示すように、Jsour Reader設定mappingはデータマッピングを行います.
var data={
id:0,
totalProperty:2、
success Property:true、
root:[
{id:'d 1',name:'name 1',descn:'descn 1',person:{
id:1,name:'man',sex:'male'
}
{id:'d 2',name:'name 2',descn:'descn 2',person:{
id:2,name:'woman'sex:'female'
}
>;
var reader=new Ext.data.Json Reader({
success Property:「success property」、
totalProperty:「totalProperty」、
root:「root」
id:「id」
),[
'id''name''descn'
{name:'person'mapping:'person.name',
{name:'personsex'mapping:'person.sex'
]]