Ext.data.field.Date - 备用格式

时间:2016-12-16 09:00:53

标签: extjs

我必须使用一个API,它以两种可能的日期格式向我提供相同数组中记录中的相同字段:

  • 第二个为零的那些将以Y-m-d H:i格式
  • 出现
  • 第二个非零的那些将以Y-m-d H:i:s格式
  • 出现

E.g。

[{"date":"2016-12-16 09:52"},{"date":"2016-12-16 09:52:02"}]

ExtJS商店应使用此类API。字段定义:

fields:[{
    name:'date',
    type:'date',
    dateFormat:'Y-m-d H:i:s'
    altFormats:'Y-m-d H:i' // <- how can I define this in an `Ext.data.field.Date`?
}]

我知道有一个convert函数,我可以在其中编写一些混乱:

convert:function(value)
    if(Ext.isDate(value)) return value;
    var valueWithSecond = Ext.Date.parse(value,"Y-m-d H:i:s");
    if(Ext.isDate(valueWithSecond)) return valueWithSecond;
    var valueWithoutSecond = Ext.Date.parse(value,"Y-m-d H:i");
    if(Ext.isDate(valueWithoutSecond)) return valueWithoutSecond;
}

可以很容易地看出,字段定义更具可读性。这样的字段定义是否可用?

1 个答案:

答案 0 :(得分:1)

您可以延长Ext.data.field.Date并覆盖enter image description here,以便您能够像以下一样使用它:

{
    name:'date',
    type:'my-date',
    dateFormat:'Y-m-d H:i:s'
    altFormats:'Y-m-d H:i'
}