我开发了一个带有XML-View的SAPUI5应用程序。
现在我想正确格式化日期。
我尝试了以下方式:
<Text text="{
path: 'model>LastCommDate',
type: 'sap.ui.model.type.Date',
formatOptions: {
pattern: 'yyyy/MM/dd'
}
}" />
错误讯息:
datajs.js:17 Uncaught TypeError: j.getTime is not a function
如果没有formatOptions
和type
,我会收到未格式化的输出。
<Text text="{
path: 'model>LastCommDate'
}" />
输出:2015-06-16T00:00:00
编辑:
Time
的同一问题:
应该如何看待时间对象的模式?
输入:sap.ui.model.type.Time
未格式化的输出:PT19H21M29S
答案 0 :(得分:3)
首先,它取决于您的日期在模型中的存储方式。 如果您将它作为JavaScript日期对象,那么您的示例应该可以正常工作。
如果你把它作为一个字符串,你需要告诉Date类型如何解析字符串,即期望的格式。您可以通过向source
添加formatOptions
部分来执行此操作:
<Text text="{
path: 'model>LastCommDate',
type: 'sap.ui.model.type.Date',
formatOptions: {
source: {
pattern: 'yyyy-MM-ddTHH:mm:ss'
},
pattern: 'yyyy/MM/dd'
}
}" />
要比较两者,请参阅this example。