【问题标题】:Ext JS: Override JsonReader or post-processExt JS:覆盖 JsonReader 或后处理
【发布时间】:2011-09-15 02:06:57
【问题描述】:

对我的服务器的特定请求会返回 x 个 JSON 字段。我想组合其中几个字段并将连接的数据插入到我的 JsonStore 的 x+1 字段中。

我知道如何处理加载事件、读取每条记录、连接适当的字段并插入到我的 x+1st 字段中。但是,是否有更好(更有效)的方法来实现这一点 - 也许通过覆盖 JsonReader?

【问题讨论】:

    标签: javascript extjs jsonstore jsonreader


    【解决方案1】:

    您正在寻找Ext.data.Field.convert

    参考 - ExtJS 3.x / ExtJS 4.x

    使用 4.x 版本的示例 -

    
    ....
    fields: [
            'name', 'email',
            {name: 'age', type: 'int'},
            {name: 'gender', type: 'string', defaultValue: 'Unknown'},
    
            {
                name: 'whatever',
                convert: function(value, record) {
                    return record.get('f1') + record.get('a2'),
                }
            }
        ]
    ....
    

    【讨论】:

    • 你是对的 - 这正是我想要的 (+1)。但是,我的转换函数永远不会被调用。我正在使用带有 SuperBoxSelect 的商店 - 也许 UX 会以某种方式停止调用转换???
    • @upper stage - 发布一些代码。从技术上讲,如果存储正在加载记录,则应调用 convert 因为这应该在记录创建时调用。我对 SuperBoxSelect 不熟悉
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-11
    • 1970-01-01
    • 2017-12-11
    • 2014-06-29
    • 2011-10-05
    • 2015-05-21
    • 1970-01-01
    相关资源
    最近更新 更多