我们正在处理服务器端的特殊Date对象。所以json返回一个对象。为此,我们想要覆盖Ext.data.field.Date
的字段定义Ext.define('Ext.overrides.data.field.Date', {
override: 'Ext.data.field.Date',
convert: function(v) {
// Do something with v and return it
console.log('Process value');
return v;
}
});
永远不会触发转换方法。使用模型内部的convert方法配置字段并调用该方法。
我们最终得到了以下“黑客”,但不确定为什么“正常覆盖”不起作用。也许有人可以对这个问题有所了解。
Ext.define('Ext.overrides.data.field.Date', {
override: 'Ext.data.field.Date',
constructor: function(config) {
var me = this;
this.convert = config.convert || function(v) {
// Do something with v and return it
console.log('Process value');
return v;
};
this.callParent(arguments);
}
});
答案 0 :(得分:0)
@Alexander:通过我的代码发现了该类的第二次覆盖。所以一切正常,只要确保你一次只有一个覆盖或确保它们按正确的顺序加载。