2

是否可以根据返回的内容在模型中创建字段定义?我想创建一个由其他 2 个字段组成的字段。

我目前正在做的是加载商店,然后处理每条记录并设置数据。不过,这感觉有点不雅:

Ext.define("moddie", {
    extend:'Ext.data.Model',
    config:{
        fields     : [
            "id",
            "move",
            "moveId"
        ]
    }
});

Ext.create('Ext.data.Store',{
    model:'moddie',
    proxy:{
        type:'ajax',
        url: 'json.json',
        reader: {
                type: 'json',
            }
        },
    },  
    config:{
        listeners:{
            load:{
                fn  : function(s,r,o){
                s.each(function(record){
                    record.set(moveId,id+move)
                }
            }
        }
    }
})

我想将该字段定义为模型的 concat -INSIDE-。就像是:

Ext.define("moddie", {
    extend:'Ext.data.Model',
    config:{
        fields     : [
            "id",
            "move",
                    {name:"moveId",value:id+move}//can I, how should I define this?
        ]
    }
});
4

1 回答 1

4

绝对地。

Ext.define("moddie", {
    extend:'Ext.data.Model',
    fields: [
        { name: 'id' }, 
        { name: 'move' }, 
        { name: 'moveId', convert: function(v, r) {
           return r.get('id') + r.get('move');
        }}, 
    ]
});
于 2012-05-22T16:52:01.910 回答