进程extjs在收到数据后存储代理数据

时间:2013-01-31 19:22:07

标签: javascript extjs

我使用extjs sencha商店存储数据。我对Web服务进行代理调用以获取数据。我使用store.load()函数刷新数据。

我希望在将数据提供给网格之前对其进行编辑。

我知道load事件,但是在加载完成后执行此函数,并使用当前数据填充数据。

listeners : {
        'load' : function(store,records, options) {
    } 
},

我希望看到如何在将Web服务分配给商店之前对其进行编辑。基本上,从我的webservice返回的数据格式与我们为extjs datagrid提供的格式不同。所以,在我们给网格之前要做一个数据操作。希望我们能做到这一点。

THX

1 个答案:

答案 0 :(得分:3)

模型映射可以帮助您完成此任务。还可以提供转换功能。以下是docs

中的示例
Ext.define('User', {
    extend: 'Ext.data.Model',
    fields: [
        {
            name: 'firstName',
            convert: function(value, record) {
                var fullName  = record.get('name'),
                    splits    = fullName.split(" "),
                    firstName = splits[0];

                return firstName;
            }
        },
        'name', 'email',
        {name: 'age', type: 'int'},
        {name: 'gender', type: 'string', defaultValue: 'Unknown'}
    ]
});