0

非常に大規模なレガシーWeb アプリケーションで extjs4 を使用しており、Web サービス プロキシを処理するストア内の特定のサブオブジェクトにビューを関連付ける方法を見つけようとしています。Web サービスは次のようなオブジェクトを提供します。

foodOrder = {
  result: {

        date : 02/11/2013,
          orderId: 123456,

          fruitProducts: {
            melons: {
               water,
               cantelope,
               ...
            },
            apples: {
               delicious,
               granny smith,
               ...
            }
          }
        }
  }

このレスポンスを受け取るストアは次のようになります。

Ext.Define('MyApp.model.FoodOrder', {
  extend: 'Ext.Model',

  fields: [
    {name: 'date', type: 'date'},
    {name: 'orderId'},
    {name: fruitProducts, type: 'array'}
  ],

  proxy: {
    type: 'mycustomproxy',
    url: 'the/food/store/order',
    reader: {
      root: 'result',
      totalProperty: 'totalCount'
    }
  }
});

fruitProducts結果内のパラメーターを「掘り下げる」ために実行できる戦略は何ですか? Web サービスの応答で見つかった情報をビューにロードしたい場合、どうすればよいでしょうか? 応答をフィルタリングする方法はありますか?

任意のアイデア/考えをいただければ幸いです。

4

1 に答える 1

1

リーダーのroot構成プロパティを変更して、より深いコンテンツを参照できます。Ext docs は次のように述べていrootます。

JSON リーダーの場合は、プロパティ名 (または、ルートがネストされている場合はプロパティ名のドット区切りリスト) です。

したがって、次のようなものを使用できるはずです。

reader: {
    root: 'result.fruitProducts',
    // etc...
}
于 2013-07-25T19:15:42.670 に答える