ExjJs 4.2 を使用しています。異なるデータを表示する 2 つのグリッドがあります。1 つの JavaScript ファイルに、両方のグリッドを含める必要があります。私は最初のグリッドのストアをロードしています
var store = Ext.create('Ext.data.Store', {
model: 'Writer.Person',
autoLoad: true,
proxy: {
type: 'ajax',
url : 'findPatientRecordAction',
reader: {
type: 'json',
successProperty: 'success',
root: 'data',
messageProperty: 'message'
},
writer: {
type: 'json',
encode: true,
root: 'data'
},
fields: ['id','notes', 'startDate', 'endDate'],
},
});
JSON オブジェクト ストアは次のようになります。
"data":[{"id":35,"notes":"hiii","startDate":"2013-04-30","endDate":"2013-05-02"}]} , "詳細" :[{"id":14,"ドキュメント":"docpath12345","日付":"2013-04-28"}]
実際には、最初のグリッドには JSON の「データ」部分のみが表示され、2 番目のグリッドには JSON の「詳細」部分が表示されます。したがって、理想的には、2 番目のグリッド (現在行っていること) に対してストア オブジェクトを再度ロードするべきではありません。もう 1 つのストア タイプ変数を宣言し、「ストア」(ストアの「ドキュメント」部分) の値を再利用して、 2番目のグリッドを次のように保存します
私は今このように2番目のストアを読み込んでいます
var store2 = Ext.create('Ext.data.Store', {
model: 'Writer.Document',
autoLoad: true,
proxy: {
type: 'ajax',
url : 'findPatientRecordAction',
reader: {
type: 'json',
successProperty: 'success',
root: 'details',
messageProperty: 'message'
},
writer: {
type: 'json',
encode: true,
root: 'details'
},
fields: ['id','document', 'date'],
},
});`.
どちらの場合も、同じアクションを呼び出して同じ JSON を取得しています。
同じデータを2回ロードする必要がないように、別のストアオブジェクトを宣言して既存の「ストア」から値を取得する方法を教えてください。
よろしく : 開発