我正在尝试将JSON日期格式化为JavaScript日期,以便以一种很好的方式显示它。原始日期来自JSON对象,如下所示:
{
"name": "foo",
"num": "1",
"date": "\/Date(1367539200000)\/"
}
稍后应显示JSON元素的位置是SAPUI5对象标题:
objectHeader = new sap.m.ObjectHeader({
title: "{/name}",
number: "{/num}",
attributes: [
new sap.m.ObjectAttribute({
text: "{/date}"
})
]
});
由于JSON对象通过
绑定到对象头dataModel.setData(json)
objectHeader.setModel(dataModel)
值正确替换。但是我希望将日期格式正确地设置为更易读的格式,而不是在我的网站上看到/Date(1367539200000)/
。我试过
new sap.m.ObjectAttribute({
text: new Date(parseInt("{/date}".substr(6))).toLocaleString('de');
})
但是因为“无效日期”失败了。将JSON日期格式化为模型绑定中的Javascript数据对象的正确语法是什么?
答案 0 :(得分:1)
您可以使用formatter为您执行此操作。优点是您可以正确使用数据绑定,因此您的控件将在模型更改时自动更新。
new sap.m.ObjectAttribute({
text: {
parts: [
{path: "/date"}
],
formatter: function(date){
//do whatever you want
return /* the value you want to have as result */;
}
}
})