sapui5 - 对象不支持属性或方法' getTime'

时间:2017-10-23 13:23:11

标签: sapui5

我正在尝试格式化sapui5中的日期。我尝试了几个stackoverflow建议,但没有成功。我从oracle db返回的日期格式是2017-10-12T00:00:00.000Z。请指导。这是我的代码

<Column>
    <m:Label text="Last Load Date" tooltip="Last Load Date"/>
    <template>
       <m:Label text="${ path: 'LAST_UPDATE', type: 'sap.ui.model.type.Date', formatOptions: { pattern: 'yyyy/MM/dd' }}"/>
    </template>
</Column>

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

这不会奏效,因为&#34; sap.ui.model.type.Date&#34;期望以下格式的数据(ABAP支持使用它):

/日期(时间戳)/

所以2个解决方案:

  1. 调整后端以返回所需的日期属性结构;
  2. 实施您的自定义数据类型(基于标准数据类型),它将使用您在问题中描述的格式。

答案 1 :(得分:1)

我遇到了同样的问题。我做的是使用自定义格式化程序而不是sapui5日期格式化程序。

new sap.m.Text({
    text: {
        path: "LAST_UPDATE",
        formatter: function(dateF) {
            var date = new Date(dateF);
            var mm = date.getMonth() + 1; // getMonth() is zero-based
            var dd = date.getDate();
            var fhh = date.getHours();
            var fmm = date.getMinutes();
            var fss = date.getSeconds();
            var dateFormated = date.getFullYear() + "/" +
                (mm > 9 ? '' : '0') + mm + "/" +
                (dd > 9 ? '' : '0') + dd + " " +
                (fhh > 9 ? '' : '0') + fhh + ":" +
                (fmm > 9 ? '' : '0') + fmm +
                ":" + (fss > 9 ? '' : '0') + fss;
            return "Last updated : " + dateFormated;
        }
    },
})